我正在为教员做一个项目,但出现错误。我是这门语言的新手,我正在遵循一些步骤,但是我正在阅读的书有点旧,所以有些功能已经过时,我无法克服一个错误。我搜索了函数 dataframe.set_value ,我看到它已更改为 dataframe.at 。
事情是这样的:
for index, row in dataset.iterrows():
home_team = row["Home"]
visitor_team = row["Away"]
row["HomeLastWin"]=won_last[home_team]
dataset.at(index, "HomeLastWin") = won_last[home_team]
dataset.at(index, "VisitorLastWin") = won_last[visitor_team]
won_last[home_team] = int(row["HomeWin"])
won_last[visitor_team] = 1 - int(row["HomeWin"])
书中找到的原始代码是:
dataset.set_value(index,"HomeLastWin", won_last[home_team])
我知道参数是 dataset.at(What_row,What_column) = change_with_this。
我得到的错误是这样的:
File "<ipython-input-40-acfeaead26ef>", line 7
dataset.at(index, "HomeLastWin") = won_last[home_team]
^
SyntaxError: cannot assign to function call
感谢您的时间和回答!
答案 0 :(得分:1)
请参阅 Pandas 文档 here。
您正在使用 .at()
,但想要使用带有 .at[]
的方括号。
dataset.at[index, "HomeLastWin"] = won_last[home_team]