Python如何对数据值求和

时间:2018-11-20 00:06:13

标签: python python-3.x csv

目前,我的程序基本上读取数据文件(电信息),将这些值求和,然后将所有负数更改为0,并保持正数不变。该程序可以完美地做到这一点。这是我目前拥有的代码:

import csv
from datetime import timedelta
from collections import defaultdict


def convert(item): 
    try:
        return float(item)
    except ValueError:
        return 0

sums = defaultdict(list)

def daily():
    lista = []
    with open('Data.csv', 'r') as inp:
        reader = csv.reader(inp, delimiter = ';')
        headers = next(reader)
        for line in reader: 
            mittaus = max(0,sum([convert(i) for i in line[1:-2]])) 
            lista.append()
            #print(line[0],mittaus) ('#'only printing to check that it works ok)
daily()

我的问题是:如何将数据保存到列表中,以便可以使用它们,并每天添加所有值,因此应如下所示:

1.1.2016;358006
2.1.2016;39
3.1.2016;0 ...
8.1.2016;239143

将它们存储在列表中(以便稍后保存到新的数据文件中)之后,它应该立即计算累积值,并且应如下所示:

1.1.2016;358006
2.1.2016;358045
3.1.2016;358045...
8.1.2016;597188 

完成这些操作后,应该准备将这些数据写入新的csv文件。
小峰值数据文件后面的内容:https://pastebin.com/9HxwcixZ [实际上是用';'分隔的,而不是像在pastebin中那样使用'']
数据文件:https://files.fm/u/yuf4bbuk

我已经弄清楚了问题,所以您可能以前看过我问过。这些应该在没有外部库的情况下完成。我希望能找到帮助。

0 个答案:

没有答案