我觉得结果有点随机。有时候是复制,有时候是视图。比如:
df = pd.DataFrame([{'name':'Marry', 'age':21},{'name':'John','age':24}],index=['student1','student2'])
df
age name
student1 21 Marry
student2 24 John
现在,让我试着稍微修改一下。
df2= df.loc['student1']
df2 [0] = 23
df
age name
student1 21 Marry
student2 24 John
正如您所看到的,没有任何改变。df2是一个副本。但是,如果我将另一个学生添加到数据框中...
df.loc['student3'] = ['old','Tom']
df
age name
student1 21 Marry
student2 24 John
student3 old Tom
试着再次更改年龄。
df3=df.loc['student1']
df3[0]=33
df
age name
student1 33 Marry
student2 24 John
student3 old Tom
现在df3突然变成了一个视图。到底发生了什么?我猜'value'的值是关键字?
df.blocks
。 - juanpa.arrivillaga_is_view
是一个非常好的功能,我之前不知道它。谢谢。 - Puneet Tripathi