我正在使用 pandas 来获取 Text 类型数据的计数并找出给定数据中的前 5 个。
输入文件如下:
Gears of war 3
Gears of war
Assassin creed
.......
.......
Crysis 2
Gears of war3
Sims
我的输出如下:
{
'Gears of War 3': 6,
'Batman': 5,
'gears of war 3': 4,
'Rocksmith': 5,
'nan': 32870
}
我希望我的代码跳过对 csv 文件中的 nan 值进行计数。
我的代码如下:
data = pandas.read_csv('D:\my_file.csv')
for colname, dtype in data.dtypes.to_dict().iteritems():
if dtype == 'object':
print colname
count = Counter(data[colname])
d = dict((str(k), v) for k, v in count.iteritems())
f = dict(sorted(d.iteritems(), key=lambda item: item[1], reverse = True)[:5])