我有这个问题
AttributeError: 'DataFrame' object has no attribute 'set_value'
AttributeError
Traceback (most recent call last)
<ipython-input-176-25558b9cd48f> in <module>
3 visitor_team = row["Visitor Team"]
4 row["HomeLastWin"] = won_last[home_team]
----> 5 dataset.set_value(index, "HomeLastWin", won_last[home_team])
我的代码:
from collections import defaultdict
won_last=defaultdict(int)
dataset["HomeLastWin"]=0
dataset["VisitorLastWin"]=0
for index, row in dataset.iterrows():
home_team = row["Home Team"]
visitor_team = row["Visitor Team"]
row["HomeLastWin"] = won_last[home_team]
dataset.set_value(index, "HomeLastWin", won_last[home_team])
dataset.set_value(index, "VisitorLastWin", won_last[visitor_team])
won_last[home_team]=int(row["HomeWin"])
won_last[visitor_team]=1-int(row["HomeWin"])
答案 0 :(得分:0)
扩大我的评论:set_value
就是deprecated,因此您需要使用其他方法。他们建议使用at
:
dataset.at[index, "HomeLastWin"] = won_last[home_team]
或者您也可以使用loc
:
dataset.loc[index, "HomeLastWin"] = won_last[home_team]