【发布时间】:2018-06-03 18:01:44
【问题描述】:
我有一个包含 3 列的 csv 文件。用户、文本和标签。每个用户都有多个文本和标签。 我想知道出现频率最高的标签,以确定每个用户的类别。
我试过了:
for i in df['user'].unique():
print (df['class'].value_counts())
它为所有用户返回如下所示的相同值
4 3062
1 1250
0 393
3 281
2 13
Name: class, dtype: int64
我也试过
for h in df['user'].unique():
g = Counter(df['class'])
print (g)
得到了
Counter({4: 3062, 1: 1250, 0: 393, 3: 281, 2: 13})
Counter({4: 3062, 1: 1250, 0: 393, 3: 281, 2: 13})
Counter({4: 3062, 1: 1250, 0: 393, 3: 281, 2: 13})
Counter({4: 3062, 1: 1250, 0: 393, 3: 281, 2: 13})
Counter({4: 3062, 1: 1250, 0: 393, 3: 281, 2: 13})
Counter({4: 3062, 1: 1250, 0: 393, 3: 281, 2: 13})
Counter({4: 3062, 1: 1250, 0: 393, 3: 281, 2: 13})
Counter({4: 3062, 1: 1250, 0: 393, 3: 281, 2: 13})
Counter({4: 3062, 1: 1250, 0: 393, 3: 281, 2: 13})
Counter({4: 3062, 1: 1250, 0: 393, 3: 281, 2: 13})
这里是样本数据 sample data 请帮忙
【问题讨论】:
-
样本数据和预期输出使其更加清晰。
-
所以您只想计算每个用户的标签?也许
groupby可以帮助你 -
对不起,伙计。我现在已经包含了示例数据