【发布时间】:2019-11-28 11:02:49
【问题描述】:
我试图用代码完成三件事,但我一直卡在第一步:
清除 csv 文件中每一列的列表。专门针对
indicatorgeocodegeoareatimeperiod和value。在这里,我不断得到太多的值来解包错误。有 18 列。我尝试将try和except包括在内,但是当有更多行时,我的列表被限制为384 行。您对解决方法有什么想法吗?为每一行创建列表
筛选和选择最近一年的 2015 年列表
这是我一直在使用的数据:https://github.com/guillermocubells/sdg9b1_642
innovation_9b1 = open('Indicators_9_6.csv','r' , encoding = 'utf-8' , errors= 'ignore')
innovation_9b1.readline()
indicator= []
geocode = []
geoarea = []
timeperiod= []
value = []
for lines in innovation_9b1:
_,_,i,_,_,g,a,tp,v,_,_,_,_,_,_,_,_,_,= lines.strip().split(',')
indicator.append(i)
geocode.append(g)
geoarea.append(a)
timeperiod.append(tp)
print(lines)
【问题讨论】:
-
删除
_,_,i,_,_,g,a,tp,v,_,_,_,_,_,_,_,_,_,中的最后一个逗号 -
看起来很适合
pandas和csv.reader()。 -
而
Indicators_9_6.csv的编码好像是iso-8859-1,而不是utf-8。
标签: python python-3.x unpack