pandas 将所有列的值连接到新的列列表中 [英] Pandas concatenate values of all column into a new column list
本文介绍了 pandas 将所有列的值连接到新的列列表中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试将我的所有专栏合并到一个新专栏中。串联的值应存储在列表中。
I am trying to concat all my columns into a new column. The concatenated values should be stored in a list.
我的数据框:
df = pd.DataFrame({'A': ['1', '2', nan],
'B': [nan, '5', nan],
'C': ['7', nan, '9']})
所需的输出:
df:
A B C concat_col
1 nan 7 [1,7]
2 5 nan [2,5]
nan nan 9 [9]
我尝试了什么:
df['concat'] = pd.Series(df.fillna('').values.tolist()).str.join(',')
我得到的输出是:
A B C concat_col
1 nan 7 1,,7
2 5 nan 2,5,,
nan nan 9 ,,9
推荐答案
以下代码应该可以工作:
The following code should work:
df['concat_col']=df.apply(lambda row: row.dropna().tolist(), axis=1)
这篇关于 pandas 将所有列的值连接到新的列列表中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文