计数列表熊猫数据框中的列中元素的出现

时间:2020-11-09 18:23:49

标签: python pandas

我有一个数据框,其中有一列字符串列表,我想查找该列中出现字符串的次数。

         samples  subject  trial_num
0    ['aa','bb']        1          1
1    ['bb','cc']        1          2

我想获得2个“ bb”,1个获得“ aa”和“ cc”

1 个答案:

答案 0 :(得分:2)

使用:

df['samples'].explode().value_counts().to_dict()
#{'bb': 2, 'aa': 1, 'cc': 1}

或者没有explode

pd.Series(np.concatenate(df['samples'])).value_counts().to_dict()
#{'bb': 2, 'aa': 1, 'cc': 1}

仅使用 numpy

的解决方案
dict(zip(*np.unique(np.concatenate(df['samples']), return_counts=True)))
#{'bb': 2, 'aa': 1, 'cc': 1}