我是熊猫的新手,我不太想知道出了什么问题。
我有两个数据框:第一个是item.csv,具有列“ item id”,“ rate_M”,“ num_M”,“ rate_F”和“ num_F” /第二个是data.csv,具有列“ user” id”,“ item id”,“ rating”和“ gender”。
使用这两个数据帧,我想做一个循环,以便它遍历data.csv中的行,
data = pd.read_csv("data.csv")
item = pd.read_csv("item.csv")
for index, row in data.iterrows():
if row["gender"] == 'M':
item.at[row["item id"], "rate_M"] += row["rating"]
item.at[row["item id"], "num_M"] += 1
if row["gender"] == 'F':
item.at[row["item id"], "rate_F"] += row["rating"]
item.at[row["item id"], "num_F"] += 1
item.to_csv("item2.csv", index=False)
但是,当我在命令提示符下运行此命令时,它返回 ValueError:1682不在范围内。
谁能告诉我哪里出了问题以及我该如何编码,以使其真正执行我想要的工作?