Python 为什么这会给我留下两个相同的DF?
我有一个这样的DF。我要合并列:Python 为什么这会给我留下两个相同的DF?,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个这样的DF。我要合并列: DF= ID token 0 here 1 I 2 am DF2 = DF DF2["token"] = DF["token"] + "-" + DF["ID"].str.split(' ').str[-1] DF2= ID token 0 here-0 1 I-1 2 am-2 但是,当我查看两个DF时,它们看起来是一样的: DF.to_csv("DF.csv") DF2.to_csv("DF
DF=
ID token
0 here
1 I
2 am
DF2 = DF
DF2["token"] = DF["token"] + "-" + DF["ID"].str.split(' ').str[-1]
DF2=
ID token
0 here-0
1 I-1
2 am-2
但是,当我查看两个DF时,它们看起来是一样的:
DF.to_csv("DF.csv")
DF2.to_csv("DF2.csv")
DF=
ID token
0 here-0
1 I-1
2 am-2
DF2=
ID token
0 here-0
1 I-1
2 am-2
为什么呢?不应该只有DF2有新的格式吗 您分配了
DF2=DF
,它只是将名称DF2
指向与名称DF
相同的对象。这意味着,当您以任意一个名称访问该对象时,您对该对象所做的任何更改都会反映出来
改用
DF2 = DF.copy()
这将创建一个新对象,该对象是
DF
指向并将独立的对象的副本。创建副本DF2=DF.copy()