📌  相关文章
📜  在 Pandas 中向现有 DataFrame 添加新列(1)

📅  最后修改于: 2023-12-03 14:51:03.760000             🧑  作者: Mango

在 Pandas 中向现有 DataFrame 添加新列

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() 函数添加新列

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 提供了许多强大的功能,可以根据实际需要选择最适合的方法添加新列。