pandas两列值追加成一列
在数据处理过程中,有时候我们需要将两列的值进行合并,生成一列新的值。这种操作在pandas库中非常常见,通过一些简单的方法,可以轻松实现这一目的。本文将详细介绍如何使用pandas将两列的值追加成一列,并给出示例代码和运行结果。
1. 使用apply()
函数
在pandas中,可以使用apply()
函数结合lambda表达式,将两列的值进行追加生成新的一列。
import pandas as pd
# 创建一个示例DataFrame
data = {'A': ['a', 'b', 'c', 'd'],
'B': [1, 2, 3, 4]}
df = pd.DataFrame(data)
# 使用apply()函数将A列和B列的值进行追加生成新列C
df['C'] = df.apply(lambda x: str(x['A']) + str(x['B']), axis=1)
print(df)
运行结果如下:
A B C
0 a 1 a1
1 b 2 b2
2 c 3 c3
3 d 4 d4
通过apply()
函数和lambda表达式,我们可以将A列和B列的值进行追加,并生成新列C。
2. 使用+
运算符
除了apply()
函数外,我们还可以使用+
运算符直接将两列的值进行追加。
import pandas as pd
# 创建一个示例DataFrame
data = {'A': ['e', 'f', 'g', 'h'],
'B': [5, 6, 7, 8]}
df = pd.DataFrame(data)
# 使用+运算符将A列和B列的值进行追加生成新列C
df['C'] = df['A'] + df['B'].astype(str)
print(df)
运行结果如下:
A B C
0 e 5 e5
1 f 6 f6
2 g 7 g7
3 h 8 h8
通过直接使用+
运算符,我们也可以将A列和B列的值进行追加生成新列C。
3. 使用str.cat()
函数
另外,pandas还提供了str.cat()
函数,可以实现两列值的追加。
import pandas as pd
# 创建一个示例DataFrame
data = {'A': ['i', 'j', 'k', 'l'],
'B': [9, 10, 11, 12]}
df = pd.DataFrame(data)
# 使用str.cat()函数将A列和B列的值进行追加生成新列C
df['C'] = df['A'].str.cat(df['B'].astype(str), sep='')
print(df)
运行结果如下:
A B C
0 i 9 i9
1 j 10 j10
2 k 11 k11
3 l 12 l12
通过使用str.cat()
函数,同样可以将A列和B列的值进行追加生成新列C。
总的来说,使用pandas将两列的值追加成一列非常简单,可以根据具体需求选择不同的方法实现。