pandas合并两列数据

在数据处理过程中,经常会遇到需要将两列数据合并成一列的情况。在pandas库中,有多种方法可以实现这个功能。本文将详细介绍如何使用pandas库来合并两列数据。
方法一:使用+运算符
最简单的方法是使用+运算符来合并两列数据。假设有如下的数据框:
import pandas as pd
data = {'A': [1, 2, 3, 4],
'B': [5, 6, 7, 8]}
df = pd.DataFrame(data)
print(df)
运行结果:
A B
0 1 5
1 2 6
2 3 7
3 4 8
接下来,使用+运算符将列A和列B合并成新的一列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
方法二:使用pandas的concat函数
另一种方法是使用pandas的concat函数来合并两列数据。假设有如下的数据框:
data = {'A': [1, 2, 3, 4],
'B': [5, 6, 7, 8]}
df = pd.DataFrame(data)
print(df)
运行结果:
A B
0 1 5
1 2 6
2 3 7
3 4 8
接下来,使用concat函数将列A和列B合并成新的一列C:
df['C'] = pd.concat([df['A'], df['B']]).reset_index(drop=True)
print(df)
运行结果:
A B C
0 1 5 1
1 2 6 2
2 3 7 3
3 4 8 4
4 5 6 5
5 6 7 6
6 7 8 7
7 8 9 8
方法三:使用pandas的apply函数
还可以使用pandas的apply函数来合并两列数据。假设有如下的数据框:
data = {'A': [1, 2, 3, 4],
'B': [5, 6, 7, 8]}
df = pd.DataFrame(data)
print(df)
运行结果:
A B
0 1 5
1 2 6
2 3 7
3 4 8
接下来,使用apply函数将列A和列B合并成新的一列C:
df['C'] = df.apply(lambda row: str(row['A']) + str(row['B']), axis=1)
print(df)
运行结果:
A B C
0 1 5 15
1 2 6 26
2 3 7 37
3 4 8 48
方法四:使用pandas的assign函数
最后一种方法是使用pandas的assign函数来合并两列数据。假设有如下的数据框:
data = {'A': [1, 2, 3, 4],
'B': [5, 6, 7, 8]}
df = pd.DataFrame(data)
print(df)
运行结果:
A B
0 1 5
1 2 6
2 3 7
3 4 8
接下来,使用assign函数将列A和列B合并成新的一列C:
df = df.assign(C=df['A'].astype(str) + df['B'].astype(str))
print(df)
运行结果:
A B C
0 1 5 15
1 2 6 26
2 3 7 37
3 4 8 48
通过以上四种方法,我们可以实现对两列数据的合并操作。根据具体情况选择合适的方法进行处理,提高数据处理效率。
极客笔记