Python 熊猫为单元格赋值,为什么不起作用?

Python 熊猫为单元格赋值,为什么不起作用?,python,pandas,Python,Pandas,如果我将新列初始化为零: df['key'] = 0 然后: 但当我将其设置为新值时: df.loc[0]['key'] = 1 调用该条目仍然返回零 df.loc[0]['key'] Out[538]: 0 发生了什么?df.loc[0]['key']是df.loc[0]的一个片段,因此您在片段上设置值,而不是数据帧本身。相反地,.loc和.iloc引用回数据帧本身,因此如果调用df.loc[0,'key']=1df.loc[0]['key']是df.loc[0]的一个片段,则应该能够更

如果我将新列初始化为零:

df['key'] = 0
然后:

但当我将其设置为新值时:

df.loc[0]['key'] = 1
调用该条目仍然返回零

df.loc[0]['key']
Out[538]: 0

发生了什么?

df.loc[0]['key']
df.loc[0]
的一个片段,因此您在片段上设置值,而不是数据帧本身。相反地,
.loc
.iloc
引用回数据帧本身,因此如果调用
df.loc[0,'key']=1
df.loc[0]['key']
df.loc[0]
的一个片段,则应该能够更新原始值,因此您在片段上设置的是一个值,而不是数据帧本身。相反地,
.loc
.iloc
引用回数据帧本身,因此如果调用
df.loc[0,'key']=1
df.loc[0,'key']=1df.loc[0,'key']=1,您应该能够更新原始值
df.loc[0]['key']
Out[538]: 0