Python Pandas Dataframe更改循环中的单元格值不会立即反映

时间:2017-02-14 01:14:40

标签: python pandas

我有一个数据帧df,如下所示:

军团FinalScore

nighthawks -1

dragoons -1

侦察员-1

for index_p, row_p in df.iterrows():
  df.ix[index_p, 'finalScore'] += 1
  print(row_p['finalScore'])

print(df)

我得到的是:

-1

-1

-1

军团FinalScore

nighthawks 0

dragoons 0

球探0

为什么在循环中更改'FinalScore'的值时,我没有打印更新的值?为什么更新后的值仅在循环后反映出来?

感谢

1 个答案:

答案 0 :(得分:1)

数据框迭代器返回行的副本,因此您看不到对基础行的更改。

参考:pandas.DataFrame.iterrows