【发布时间】:2015-05-03 06:51:21
【问题描述】:
我有一个包含 .csv 文件的文件夹,所有文件的 id 相同但内容不同,如下所示:
文件一:
id, content
jdhfs_SDGSD_9403, bla bla bla bla
aadaaSDFDS__ASdas_asad_342, bla bla
...
asdkjASDAS_asdasSFSF_sdf, bla bla
文件二:
id, content
jdhfs_SDGSD_9403, string string string
aadaaSDFDS__ASdas_asad_342, string string string
...
asdkjASDAS_asdasSFSF_sdf, string string string
我想保留 id 列,但将内容合并到一个新文件中,如下所示(即生成一个新文件):
id, content
jdhfs_SDGSD_9403, bla bla bla bla string string string
aadaaSDFDS__ASdas_asad_342, bla bla string string string
...
asdkjASDAS_asdasSFSF_sdf, bla bla string string string
这是我尝试过的:
from itertools import izip_longest
with open('path/file1.csv', 'w') as res, \
open('/path/file1.csv') as f1,\
open('path/file1.csv') as f2:
for line1, line2 in izip_longest(f1, f2, fillvalue=""):
res.write("{} {}".format(line1.rstrip(), line2))
这样做的问题是将所有内容合并到一行中。知道如何以更 Python 的方式做到这一点吗?
编辑:
import pandas as pd
df1= pd.read_csv('path/file1.csv')
df2=pd.read_csv('path/file2.csv')
new_df = pd.concat([df1, df2], axis=1)
print new_df
new_df.to_csv('/path/new.csv')
然后标题合并如下:
,id,content,id,content
还有这样的内容:
0jdhfs_SDGSD_9403, bla bla bla bla jdhfs_SDGSD_9403, string string string。
我怎样才能得到这样的东西?:
jdhfs_SDGSD_9403, bla bla bla bla string string string
没有数据帧的索引号?
【问题讨论】:
标签: python python-2.7 csv pandas glob