📌  相关文章
📜  在 Pandas 中将两个文本列合并为一个列

📅  最后修改于: 2022-05-13 01:55:21.685000             🧑  作者: Mango

在 Pandas 中将两个文本列合并为一个列

让我们看看将两个文本列连接成一个列的不同方法。

方法 #1:使用 cat()函数
我们还可以在连接过程中使用不同的分隔符。例如 -、_、“”等。

# importing pandas
import pandas as pd
  
df = pd.DataFrame({'Last': ['Gaitonde', 'Singh', 'Mathur'],
                   'First': ['Ganesh', 'Sartaj', 'Anjali']})
  
print('Before Join')
print(df, '\n')
  
print('After join')
df['Name'] = df['First'].str.cat(df['Last'], sep =" ")
print(df)

输出 :
方法 #2:使用 lambda函数

此方法通过将 df[['First', 'Last']] 替换为数据帧的任何列切片来推广到任意数量的字符串列,例如 df.iloc[:, 0:2].apply(lambda x: ' '.join(x), 轴 = 1)。

# importing pandas
import pandas as pd
  
df = pd.DataFrame({'Last': ['Gaitonde', 'Singh', 'Mathur'],
                   'First': ['Ganesh', 'Sartaj', 'Anjali']})
  
print('Before Join')
print(df, '\n')
  
print('After join')
df['Name'] = df[['First', 'Last']].apply(lambda x: ' '.join(x), axis = 1)
print(df)

输出 :

方法 #3:使用 +运算符

我们需要在加入之前将数据框元素转换为字符串。我们还可以在连接过程中使用不同的分隔符,例如 -、_、' ' 等。

# importing pandas
import pandas as pd
  
df = pd.DataFrame({'Last': ['Gaitonde', 'Singh', 'Mathur'],
                   'First': ['Ganesh', 'Sartaj', 'Anjali']})
  
print('Before Join')
print(df, '\n')
  
print('After join')
df['Name']= df["First"].astype(str) +" "+ df["Last"]
print(df)

输出 :