字数在数据框列中

时间:2018-03-09 08:54:19

标签: python python-3.x pandas dataframe counter

我有一个包含大约4000个客户问题的数据集。我想了解客户最常询问的主题。我没有主题列表。我希望在专栏中得到一个字数。

数据位于pandas数据框中。

1 个答案:

答案 0 :(得分:3)

按空格使用splitexpand=True使用DataFrame,按stack重新整理,按value_counts获取排序计数:

df = pd.DataFrame({'a':['aa ss d','f d aa aa','aa']})
print (df)
           a
0    aa ss d
1  f d aa aa
2         aa

s = df['a'].str.split(expand=True).stack().value_counts()
print (s)
aa    4
d     2
f     1
ss    1
dtype: int64

DataFrame

df1 = (df['a'].str.split(expand=True)
              .stack()
              .value_counts()
              .rename_axis('vals')
              .reset_index(name='count'))
print (df1)
  vals  count
0   aa      4
1    d      2
2    f      1
3   ss      1