有关csv.DictReader的问题

时间:2017-01-31 16:37:58

标签: python python-2.7

list3 = []

with open('**directory**') as csvfile:
    reader = csv.DictReader(csvfile)
    for row in reader:
        list3.append(row)

我是使用Python进行数据分析的全新手段,需要一些帮助。

我访问的文件包含5人的数据(CSV文件)。共有3列 - 参与者编号,任务前评分和任务后评分。

我基本上试图访问此文件(使用csv.DictReader)并操纵数据。通过这个,我的意思是我想计算每个参与者的任务后得分和任务前得分之间的差异,并将其打印到屏幕上。

但是,我不知道该怎么做。我可以将每一行打印到屏幕上,并且我可以将每一行保存在一个列表中(正如我上面所做的那样) - 但我对如何操作/处理这些数据毫无头绪。我想知道是否有比我目前正在使用的模块更好的东西。

1 个答案:

答案 0 :(得分:0)

计算CSV文件中第二列和第三列之间的差异可以按如下方式完成:

import csv

with open('file.csv', 'rb') as csvfile:
    reader = csv.reader(csvfile, delimiter=',')
    # skip the header row, remove this next line if there is no header
    next(reader, None)

    for row in reader:
        difference = float(row[2]) - float(row[1])
        print str(difference)