【发布时间】:2021-06-23 20:12:51
【问题描述】:
我正在尝试将多列合并为一列,同时删除重复项并删除空值但保留行。 我有什么:
df= pd.DataFrame(np.array([['nan', 'nan', 'nan'], ['nan', 2, 2], ['nan', 'x', 'nan']]), columns=['a', 'b', 'c'])
我需要什么:
df= pd.DataFrame(np.array([[''], [ 2], [ 1]]), columns=['a'])
我试过了,但最后一行得到 1,nan:
df['a]=df[['a','b','c]].agg(', '.join, axis=1)
我也尝试了以下方法,但无法正常工作:
.stack().unstack()
和
.join
但我无法让这些删除每一行的重复项
【问题讨论】:
-
df.fillna('').stack().drop_duplicates().reset_index(drop=True)?还是您希望逐行删除重复项? -
好问题克里斯,我想删除重复的行
标签: python merge multiple-columns