📅  最后修改于: 2023-12-03 15:25:13.401000             🧑  作者: Mango
在使用 pandas 进行数据分析时,经常需要将一个 DataFrame 复制到另一个 DataFrame 中。这可以通过 pandas 的 copy()
方法实现。以下是一个简单的例子:
import pandas as pd
# 创建一个 DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
# 复制 DataFrame
df_copy = df.copy()
# 打印原始 DataFrame 和复制 DataFrame
print('原始 DataFrame:\n', df)
print('复制 DataFrame:\n', df_copy)
输出应该如下所示:
原始 DataFrame:
A B
0 1 4
1 2 5
2 3 6
复制 DataFrame:
A B
0 1 4
1 2 5
2 3 6
在这个例子中,我们创建了一个简单的 DataFrame,然后使用 copy()
方法将其复制到一个新的 DataFrame 中。注意,新创建的 DataFrame 是原始 DataFrame 的副本,这意味着对复制对象的更改不会影响原始对象。这非常有用,因为它可以防止对原始 DataFrame 进行意外的更改。
有时候,您可能想要复制 DataFrame 中的某些数据并创建一个全新的 DataFrame。您可以使用 loc
和 iloc
方法对 DataFrame 的特定行和列进行选择,然后将其复制到一个全新的 DataFrame 中。以下是一个简单的例子:
import pandas as pd
# 创建一个 DataFrame
df = pd.DataFrame({
'name': ['Alice', 'Bob', 'Charlie'],
'age': [25, 30, 35],
'gender': ['Female', 'Male', 'Male']
})
# 复制特定的行和列到新的 DataFrame
df_copy = df.loc[0:1, ['name', 'age']].copy()
# 打印原始 DataFrame 和复制 DataFrame
print('原始 DataFrame:\n', df)
print('复制 DataFrame:\n', df_copy)
输出应该如下所示:
原始 DataFrame:
name age gender
0 Alice 25 Female
1 Bob 30 Male
2 Charlie 35 Male
复制 DataFrame:
name age
0 Alice 25
1 Bob 30
在这个例子中,我们使用 loc
方法选择 DataFrame 中的前两行,并仅包括 name
和 age
两列。然后我们使用 copy()
方法将结果复制到一个新的 DataFrame 中。注意,新创建的 DataFrame 是原始 DataFrame 的副本,但只包含所选的行和列。
综上所述,通过使用 pandas 的 copy()
方法,您可以轻松地将 DataFrame 复制到另一个 DataFrame 中。在某些情况下,您还可以使用 loc
和 iloc
方法选择 DataFrame 中的特定行和列,然后将其复制到一个全新的 DataFrame 中。