行平均CSV Python

时间:2015-01-15 09:56:34

标签: python csv

我正在寻找一段代码,用于打印csv中每个用户得分的平均值。

它需要读取所有分数,然后为每个用户计算出整行的平均值。

还需要计算有多少分数才能准确计算平均分数,因此如果只完成了2项测试,则需要除以2。

CSV

STUDENT,SCORE1,SCORE2,SCORE3  
elliott,12,2,12  
bob,0,11,1
test,0,1

我需要代码来计算CSV中所述的所有用户平均值,然后打印输出。

干杯。

1 个答案:

答案 0 :(得分:0)

您可以使用csv library来读取文件。这只是计算平均值的一个例子:

import csv

with open('example.csv') as handle:
    reader = csv.reader(handle)
    next(reader, None)
    for row in reader:
        user, *scores = row
        average = sum([int(score) for score in scores]) / len(scores)
        print (
            "{user} has average of {average}".format(user=user, average=average)
        )

输入后会打印:

elliott has average of 8.666666666666666
bob has average of 4.0
test has average of 0.5

此代码需要python 3。