我是Pandas数据框的新手,我想在由'col1'分组的多个组中找到'col2'的通用值
col1 col2
a abc
pqr
xyz
b abc
def
bcd
c bcd
efg
输出应如下:
abc [a,b]
bcd [b,c]
有人可以帮助我解决问题吗?
谢谢。
答案 0 :(得分:0)
使用:
df['col1'] = df['col1'].replace('',np.nan).ffill()
s = df.groupby('col2')['col1'].apply(list)
s = s[s.str.len() > 1].reset_index()
print (s)
col2 col1
0 abc [a, b]
1 bcd [b, c]
说明:
replace
个空值添加到NaN
s,然后向前填充NaN
s col2
的每个值,总计list
s boolean indexing
的长度过滤列表