📌  相关文章
📜  如何连接 Pandas DataFrame 中的列值?(1)

📅  最后修改于: 2023-12-03 15:09:16.763000             🧑  作者: Mango

如何连接 Pandas DataFrame 中的列值?

在 Pandas 中,有时候需要将 DataFrame 中的不同列进行连接,这在数据处理和清洗中经常被使用。以下是几种常见的连接方法。

1. 使用“+”操作符

可以使用“+”操作符将两列连接在一起。以下示例将连接两个字符串列:

import pandas as pd

df = pd.DataFrame({'Name': ['John', 'Alex', 'Emily'], 'Surname': ['Doe', 'Smith', 'Brown']})
df['Full Name'] = df['Name'] + ' ' + df['Surname']
print(df)

代码输出结果:

    Name Surname       Full Name
0   John     Doe        John Doe
1   Alex   Smith      Alex Smith
2  Emily   Brown     Emily Brown
2. 使用 Pandas 的字符串方法

Pandas 提供了多个字符串方法,可以用于对 DataFrame 中的字符串列进行操作。例如,可以使用 str.cat() 方法连接两个列,即使其中一个列中存在缺失值。

import pandas as pd

df = pd.DataFrame({'Name': ['John', 'Alex', 'Emily'], 'Surname': ['Doe', 'Smith', '']})
df['Full Name'] = df['Name'].str.cat(df['Surname'], sep=' ', na_rep='')
print(df)

代码输出结果:

    Name Surname       Full Name
0   John     Doe        John Doe
1   Alex   Smith      Alex Smith
2  Emily           Emily
3. 使用 apply 方法

可以使用 apply 方法,将连接的逻辑封装在一个函数中,并将该函数应用于 DataFrame 的每一行。

import pandas as pd

df = pd.DataFrame({'Name': ['John', 'Alex', 'Emily'], 'Surname': ['Doe', 'Smith', 'Brown']})

def concatenate(row):
    return row['Name'] + ' ' + row['Surname']

df['Full Name'] = df.apply(concatenate, axis=1)
print(df)

代码输出结果:

    Name Surname       Full Name
0   John     Doe        John Doe
1   Alex   Smith      Alex Smith
2  Emily   Brown     Emily Brown

以上就是连接 Pandas DataFrame 中的列值的常见方法,可以根据具体情况进行选择。