这扩展了保罗的答案。在Pandas中,为Dataframe编制索引将返回对初始Dataframe的引用。因此,更改子集将更改初始Dataframe。因此,如果要确保不更改初始Dataframe,则需要使用该副本。考虑以下代码:
df = Dataframe({'x': [1,2]})df_sub = df[0:1]df_sub.x = -1print(df)你会得到:
x0 -11 2
相反,以下内容使df保持不变:
df_sub_copy = df[0:1].copy()df_sub_copy.x = -1



