Python 如何在Pandas中将多个列合并到一个变量(即列表)中
我有以下字符串列Python 如何在Pandas中将多个列合并到一个变量(即列表)中,python,pandas,variables,dataframe,merge,Python,Pandas,Variables,Dataframe,Merge,我有以下字符串列 Str1 Str2 Str3 OK I Go Yes Hm Fine I see 我想把它们组合成一个列表变量 AllStr ["ok", "I", "Go"] ["Yes", "Hm"] ["Fine", "I see"] 我尝试了不同的方法,我接近但不完全正确: df_manual_label['AllStr'] = df_manual_label[['Str1', 'Str2', 'Str3']].app
Str1 Str2 Str3
OK I Go
Yes Hm
Fine I see
我想把它们组合成一个列表变量
AllStr
["ok", "I", "Go"]
["Yes", "Hm"]
["Fine", "I see"]
我尝试了不同的方法,我接近但不完全正确:
df_manual_label['AllStr'] = df_manual_label[['Str1', 'Str2', 'Str3']].apply(lambda x: ', '.join(x.astype(str)), axis=1)
您可以使用
stack
df['New']=df.replace('',np.nan).stack().groupby(level=0).apply(list)
df
Out[1666]:
Str1 Str2 Str3 New
0 OK I Go [OK, I, Go]
1 Yes Hm [Yes, Hm]
2 Fine I see [Fine, I see]