首先,我是Python的新手。我正在尝试将多个数据组合成一个CSV。以下是CSV格式
文件1.csv
Country of Residence,2014-04,2015-04
NORTH AMERICA ,"5,514","6,160"
Canada ,"2,417","2,864"
U.S.A. ,"3,097","3,296"
LATIN AMERICA & THE CARIBBEAN ,281,293
WESTERN EUROPE ,"37,369","34,964"
Austria ,893,666
Belgium ,867,995
文件2.csv
^{pr2}$在最后的csv中,我希望有一个唯一的标题列表为
Country of Residence,2014-04,2015-04,2014-05,2015-05,..2014-11,2014-11
NORTH AMERICA ,"5,514","6,160",NaN,Nan,...
Portugal, Nan,Nan,Nan,Nan,.....,211,261
另外,我希望国家列表是唯一的,这样我可以通过阅读csv列表来填充数字。在
在下面的代码中,我得到了唯一的列标题,但我不知道如何使Country列唯一,并根据Country和一年中的月份添加一个数字。。在
非常感谢任何帮助。在
for filename in glob.iglob(os.path.join('/Documents/stats/csv','*.csv')):
with open(filename,'rb') as f:
csvIn = csv.reader(f)
hdr = csvIn.next()
hdr[0] = hdr[0].replace('\xef\xbb\xbf','')
hdrList.append((len(hdr),hdr))
hdrList.sort()
hdrs = []
template = []
for t in hdrList:
for f in t[1]:
print(f)
if
if not (f in hdrs):
hdrs.append(f)
template.append('')
如果你不在乎背后的逻辑,你可以用熊猫来做:
这段代码会让你走上正轨。注意:它是为Python3编写的。在
结果:
^{pr2}$相关问题 更多 >
编程相关推荐