需要帮助在python中查找AVERAGE

时间:2013-05-14 12:21:20

标签: python average

(198)和(272)范围内[quant]字段中数字的平均值是多少

quant
95
189
176
200
177
340
205
203
284
88
109
83
360
67
250
56
111
439
354
143

这是我试过的代码。以上是我需要找到平均值的[quant]字段。

word_file = open('300000a.csv','r')

firstLine = True 
for line in word_file:
    if firstLine:
        firstLine = False
        continue
    line = line.strip()
    line = line.split (",")
    field = int(line[0])

TotalMetalCount +=1
if  field >198 or field <272:
  metalCounts += 1
else:
    metalCounts = 1


countT +=1
if field >198 or field <272:
        count += 1

2 个答案:

答案 0 :(得分:2)

您可以使用sum计算列表的平均值,并将其除以length

float(sum(my_list))/len(my_list)

如果你只需要抓取几个特定的​​项目,并根据你可以切割数组的平均值提取平均值。

print(float(sum(my_list[198:272]))/len(my_list[198:272]))

如果您有一个包含字符串的列表,而不是整数,则需要先将它们转换为整数列表,然后才能使用sum。

my_list_of_integers = [int(i) for i in my_list[198:272]
print(float(sum(my_list_of_integers))/len(my_list_of_integers]))

答案 1 :(得分:0)

如果你要做的比这更多数字,你应该使用numpy。然后会有各种方法将CSV文件作为数组读取。这些数组有一个.mean()方法,它可以完成你的想法。

(但是如果你没有做更多的数字,那么@eandersson的回答就更合适了。)