目前,我的程序基本上读取数据文件(电信息),将这些值求和,然后将所有负数更改为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
我已经弄清楚了问题,所以您可能以前看过我问过。这些应该在没有外部库的情况下完成。我希望能找到帮助。