python - 使用外部 csv 文件计算 Python 列中单词的频率

标签 python csv

此问题曾由 user907629 提出过,和 Maria Zverina回答了问题,但她没有从外部 csv 文件导入数据。

我的文件包含超过 800000 条记录,我想导入外部 csv 文件。对此frequency count应该做哪些改变代码?

最佳答案

您可以在不存储任何中间列表的情况下完成此操作:

import csv
from collections import Counter
from itertools import imap
from operator import  itemgetter

with open('yourcsv') as f:
    next(f) # skip the header
    cn = Counter(imap(itemgetter(2), csv.reader(f)))

    for t in cn.iteritems():
        print("{} appears {} times".format(*t))

没有理由将数据存储在列表中,除非您计划使用列表,itemgetter 只会从每行中提取第三列值。您需要传递您想要计数的任何列,并将分隔符设置为分隔数据的任何内容。

关于python - 使用外部 csv 文件计算 Python 列中单词的频率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34463263/

相关文章:

csv - 使用 Serde 将结构实例写入文件时如何向结构实例添加额外的数据点?

csv - 在 Hadoop 中合并 CSV 文件

python - 有没有一种简单的方法可以通过 sympy 获取某个域中函数的所有不连续性?

python - 使用 pcapy/impacket 更改数据包数据

javascript - 错误 : AttributeError: 'coroutine' object has no attribute 'newPage' when doing youtube webscraping

objective-c - 在 Objective-C 中逗号分隔的字符串到 NSArray

python - 云功能需要shebang吗?

python - 在Python中,为什么完全相同的代码行第一次失败而第二次成功?

java - 确定 CSV 文件中的分类数据与数值数据 --

python - 写入 csv 文件 scrapy