背景
DataFrame 中某一列为str类型,
(1)想要统计该列方向各个字符的词频
(2)将2个列的统计结果进行合并,即相同key进行相加
实施
import pandas as pd
import pdb
from collections import Counter
datas = {'column1': ['我毕业于华中科技大学', '我毕业于武汉大学'], 'column2': ['我选露娜', '夏洛特']}
df = pd.DataFrame(datas)
print(df)
column1_counter = Counter(df['column1'].str.cat())
column2_counter = Counter(df['column2'].str.cat())
print("column1_counter=", column1_counter)
print("column2_counter=", column2_counter)
# 2个 字典合并
# pdb.set_trace()
total_counter = column1_counter + column2_counter
print("total_counter=", total_counter)
运行结果如下:
column1 column2
0 我毕业于华中科技大学 我选露娜
1 我毕业于武汉大学 夏洛特
column1_counter= Counter({'我': 2, '毕': 2, '业': 2, '于': 2, '大': 2, '学': 2, '华': 1, '中': 1, '科': 1, '技': 1, '武': 1, '汉': 1})
column2_counter= Counter({'我': 1, '选': 1, '露': 1, '娜': 1, '夏': 1, '洛': 1, '特': 1})
total_counter= Counter({'我': 3, '毕': 2, '业': 2, '于': 2, '大': 2, '学': 2, '华': 1, '中': 1, '科': 1, '技': 1, '武': 1, '汉': 1, '选': 1, '露': 1, '娜': 1, '夏': 1, '洛': 1, '特': 1})