📅  最后修改于: 2023-12-03 14:51:03.760000             🧑  作者: Mango
Pandas 是一个强大的数据分析工具,它提供了许多功能来处理和操作数据。其中之一就是能够向现有 DataFrame 中添加新列。
你可以使用字典来添加新列。字典的键作为新列的名称,而值则用于填充新列的数据。下面是一个示例:
import pandas as pd
data = {'A': [1, 2, 3, 4],
'B': [5, 6, 7, 8]}
df = pd.DataFrame(data)
# 添加新列 'C',使用字典
df['C'] = {'X': 10, 'Y': 20, 'Z': 30, 'W': 40}
print(df)
输出:
A B C
0 1 5 40.0
1 2 6 20.0
2 3 7 30.0
3 4 8 10.0
在上述代码中,我们创建了一个 DataFrame,并使用字典 {'X': 10, 'Y': 20, 'Z': 30, 'W': 40}
来添加新列 'C'。Pandas 会根据字典中的键值对,将 'C' 列的数据填充到 DataFrame 中对应的行。
除了使用字典,你还可以使用现有的列来计算和生成新列。下面是一个示例:
import pandas as pd
data = {'A': [1, 2, 3, 4],
'B': [5, 6, 7, 8]}
df = pd.DataFrame(data)
# 添加新列 'C',使用现有列计算
df['C'] = df['A'] + df['B']
print(df)
输出:
A B C
0 1 5 6
1 2 6 8
2 3 7 10
3 4 8 12
在上述代码中,我们利用了现有的 'A' 列和 'B' 列来计算生成了新的 'C' 列。
apply() 函数可以接受一个函数或 lambda 表达式,对 DataFrame 中的每一行进行操作,并将操作结果作为新列添加到 DataFrame 中。下面是一个示例:
import pandas as pd
data = {'A': [1, 2, 3, 4],
'B': [5, 6, 7, 8]}
df = pd.DataFrame(data)
# 使用 apply() 函数添加新列 'C'
df['C'] = df.apply(lambda row: row['A'] + row['B'], axis=1)
print(df)
输出:
A B C
0 1 5 6
1 2 6 8
2 3 7 10
3 4 8 12
在上述代码中,我们使用 apply() 函数和一个 lambda 表达式来对每一行的 'A' 列和 'B' 列进行求和,并将结果作为新列 'C' 添加到 DataFrame 中。
以上是向现有 DataFrame 中添加新列的几种常见方法。Pandas 提供了许多强大的功能,可以根据实际需要选择最适合的方法添加新列。