Pandas 数据帧copy()
方法
原文:https://www.studytonight.com/pandas/pandas-dataframe-copy-method
当我们想要通过添加、删除或更新数据帧来操作数据帧而不改变数据帧时,我们可以复制并进行操作。
在本教程中,我们将学习 PandasDataFrame.copy()
的方法。此方法复制数据帧的数据并返回一个新对象。下图显示了 PandasDataFrame.copy()
方法的语法。
句法
DataFrame.copy(deep=True)
因素
深:代表布尔(真或假),默认为真。制作一份深度拷贝,包括数据和索引的拷贝。通过deep=False
既不复制索引也不复制数据。
当deep=True
(默认)时,将使用调用对象的数据和索引的副本创建一个新对象。对副本数据或索引的修改不会反映在原始对象中。
当deep=False
时,将不复制调用对象的数据或索引而创建一个新对象(只复制对数据和索引的引用)。对原始数据的任何更改都将反映在浅拷贝中(反之亦然)。
示例 1:使用DataFrame.copy()
方法复制数据帧
创建一个数据帧,并使用DataFrame.copy()
方法复制该数据帧。
#importing pandas as pd
import pandas as pd
df = pd.DataFrame({'A': ['a', 'b', 'c'], 'B': ['d', 'e', 'f']})
print(df)
df1=df.copy()
print(df1)
一旦我们运行该程序,我们将获得以下输出。
A B 0 A d 1 B e 2 c f A B 0 A d 1 B e 2 c f
示例 2:使用DataFrame.copy()
方法复制数据帧
让我们用另一个复制数据帧的例子来理解。
#importing pandas as pd
import pandas as pd
colors = {'first_set': ['Green','Blue','Red'],'second_set': ['Yellow','White','Blue']}
df = pd.DataFrame(colors)
print(df)
df1=df.copy()
print(df1)
一旦我们运行该程序,我们将获得以下输出。
第一 套第二 套 0 绿黄 1 蓝白 2 红蓝 第一 套第二 套 0 绿黄 1 蓝白 2 红蓝
示例 3:使用deep=False
的DataFrame.copy()
方法复制数据帧
当deep=False
、DataFrame.copy()
方法创建一个新对象时,对原始数据的任何更改都会反映在浅拷贝中。
import pandas as pd
colors = {'first_set': ['Green','Blue','Red'],'second_set': ['Yellow','White','Blue']}
df = pd.DataFrame(colors)
df1=df.copy(deep=False)
df1['first_set'] = df1['first_set'].replace(['Blue'],'Green')
print(df1)
print(df)
一旦我们运行该程序,我们将获得以下输出。
第一 套第二 套 0 绿黄 1 绿白 2 红蓝 第一 套第二 套 0 绿黄 1 绿白 2 红蓝
结论
在本教程中,我们学习了 PandasDataFrame.copy()
方法。我们学习了DataFrame.copy()
方法的参数,求解了实例,以及该方法如何复制具有不同参数和这些参数差异的数据帧。