计算csv文件中特定字符串的出现次数

时间:2015-03-04 16:45:14

标签: python file csv for-loop count

您好我有一个文件,我需要计算“美沙酮”和“Co-Codamol”这个词的出现次数。事实上在这个特定的文件中,似乎打印'0',美沙酮和co-codamol发生的总次数是9次。这是文件的样子:

http://i.stack.imgur.com/hUdJt.png

这是我的代码:

import csv
import collections
number = collections.Counter()
with open('C:\Users\Desktop\practice jan.csv') as input_file:
    for row in csv.reader(input_file, delimiter=','):
        number[row[1]] += 1
print 'Number of prescriptions is %s' % number['Methadone' + 'Co-Codamol']

>> Number of opioid prescriptions is 0

3 个答案:

答案 0 :(得分:0)

读取文件并计算字符串的出现次数:

with open('Path/to/file', 'r') as content_file:
    content = content_file.read()
    print(content.count("Methadone"))

只要您的文件不是太大,就可以完成这项工作。

答案 1 :(得分:0)

不确定您要尝试执行此操作的上下文,但如果您可以使用grep,则非常简单:

grep -o string file | wc -l <​​/ p>

答案 2 :(得分:0)

假设&#39;美沙酮&#39;和Co-Codamol&#39;是两种不同的药物,我建议你用以下代码替换你的最后一行:

print 'Number of prescriptions is %s' % (number['Methadone'] + number['Co-Codamol'])
相关问题