Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 平均数据列_Python - Fatal编程技术网

Python 平均数据列

Python 平均数据列,python,Python,给我一个有标题的文本文件,然后每行以一年开始,然后包括12个数字,对应于1977年到2012年的月份。我应该写一个程序,使用函数来添加和平均数据的基础上,一年,但我挣扎着如何去做这件事。任何帮助都会很好这会让你开始 假设这是csv: year,number_1, number_2... 1911,1,2... 1912,1,3 1933,1,4, import csv dict_reader = csv.DictReader(open('myfile.txt')) average_by_ye

给我一个有标题的文本文件,然后每行以一年开始,然后包括12个数字,对应于1977年到2012年的月份。我应该写一个程序,使用函数来添加和平均数据的基础上,一年,但我挣扎着如何去做这件事。任何帮助都会很好

这会让你开始

假设这是csv:

year,number_1, number_2...
1911,1,2...
1912,1,3
1933,1,4,

import csv

dict_reader = csv.DictReader(open('myfile.txt'))
average_by_year = collections.defaultdict(int)
for row in dict_reader:
  current_year = row['year']
  average_by_year[current_year] = (
    sum((value for key, value in row.iteritems() if key != 'year')) / 12)

这可能会奏效。它逐行遍历数据文件,并平均除第一列之外的每一列的总数

with open(csvfile) as data:
    print [sum(map(int,line[:-1].split(',')[1:]))/12 for line in data]

这似乎是编码竞赛或作业中的一个典型新手I/O问题

算法 使用函数打开一个文件 使用函数逐行读取文件 拆分读取字符串以使用函数创建列表 类型转换 切片列表,在索引0的帮助下,将每个月的值列表与年份的值列表分开 使用诸如&之类的基本算术函数计算平均值。 附加功能:使用该函数将数据写入另一个文件 [扰流板代码]请勿将鼠标悬停在下方
你考虑过哪些方法?您以前做过任何编程吗?您在问题中标记了python,您有用于该项目的python代码吗?是否可以显示您需要处理的数据? symbol_separating_12_numbers = ',' f = open('filename.txt') no_cases = int(f.readline()) #assuming no of cases on the first line as header for case in xrange(no_cases): data = [int(number) for number in f.readline().split(symbol_separating_12_numbers)] months = data[1:] print "%s: %s" % (data[0], sum(months)/len(months)