在实际应用中,经常需要把统计一段字符中,每个词出现的次数,也就是词频。统计次数有一个现成的方法就是DataFrame.value_counts(),问题是如何保存结果为我们所用。思路就是把value_counts的两列先分别转成列表,再讲两个列表转成字典。
import pandas as pd data = pd.DataFrame({'a':['a','b','c','a']}) data_counts = data.a.value_counts() #通过value_counts计算词频 df_data_counts = pd.DataFrame(data_counts) #将词频结果转成DataFrame格式。 # 但是需要注意,转成的DataFrame的索引是需要被统计的词,列是词出现的次数 print(df_data_counts.index.values.tolist()) #把词转成列表 print(df_data_counts['a'].tolist()) #把词出现的次数转成列表 print(dict(zip(df_data_counts.index.values.tolist(),df_data_counts.a.tolist()))) #转成字典