在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)
输出 :
方法二:使用lambda函数
这个方法可以通用于任意数量的字符串列,方法是将df[[‘First’, ‘Last’]]替换为你的数据框架的任何列片,例如df.iloc[:, 0:2].apply(lambda x: ‘ ‘.join(x), axis=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)
输出 :