gpt4 book ai didi

python - 索引错误 : index 201850347 is out of bounds for axis 0 with size 201837124 while using unstack operation for large dataset

转载 作者:太空宇宙 更新时间:2023-11-04 06:41:31 25 4
gpt4 key购买 nike

我正在尝试为我的项目实现用户-用户协同过滤算法。下面的代码适用于非常小的数据集,但在 yelp 数据集(100 万用户 200k 产品)上运行它时,它在使用 unstack 的行上给出了索引错误。它可以正确读取和打印庞大的数据集,但不会对其进行拆分。输入是一个包含用户、产品和相关评级的数据集。输出必须是计算出的预测。

我在 stackoverflow 上发现了许多其他问题来解决这个问题,但它们与 Python 的 unstack 操作无关。我尝试了替代方案,例如不使用 unstack 并单独使用 groupby 进行所有操作,但这是不可行的。我不知道如何解决这个问题。

import pandas as pd;
from math import *;

df = pd.read_csv('preprocessed.csv', names ['users','Products','stars'],low_memory=False)
s = df.groupby(['users', 'Products']).sum()
m = s.unstack(fill_value=0.0)
print(m)

输出:

stars
Products product1 product2 product3
users
user1 1.0 0.0 4.0
user2 1.0 3.0 0.0
user3 1.0 0.0 0.0
user4 0.0 0.0 3.0


Predicted ratings
stars
Products product1 product2 product3
users
user1 1.0 0.115504 4.000000
user2 1.0 3.000000 1.489822
user3 1.0 0.478533 0.521467
user4 1.5 0.500000 3.000000

最佳答案

当我拆开一个大的 groupby 系列时,我遇到了和你一样的问题。问题来自没有足够的内存。因此,最好的解决方案是使用更大的 RAM 机器来运行您的计算。

关于python - 索引错误 : index 201850347 is out of bounds for axis 0 with size 201837124 while using unstack operation for large dataset,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42816744/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com