[英]rewrite csv file with python
我有 csv 这个结构的文件:
code1 code2 code3 name1 name2 sometnig1 something2
14355 12345 54133 part1 part12 aaaaaaaa bbbbbbb
54782 57815 52781 part2 part22 ccccccc ffffffff
14515 52495 52852 part3 part33 ddddddd sssssss
我需要解析这个 csv 文件并使用我自己的标题和我需要的列创建新的 csv 文件,例如:
code_1 code_2 name_1 name_2 something_2
14355 12345 part1 part12 bbbbbbb
54782 57815 part2 part22 ffffffff
14515 52495 part3 part33 sssssss
我知道,我可以 select 我需要的一列,然后使用 pandas 将其写入另一个文件:
df = pd.read_csv(file)
df1 = df[code_1]
但是我怎样才能将 select 多列写入一个文件呢?
最简单的方法是只阅读您关心的专栏,并保存一些 memory:
df = pd.read_csv(file, usecols=["code_1", "code_2", "name_1", "name_2", "something_2"])
df.to_csv("other_file.csv", index=False)
另一种选择,如果你已经有一个你想要子集的df
,是使用一个列表到 select 你关心的列。
df = df[["code_1", "code_2", "name_1", "name_2", "something_2"]]
您可以使用列表 select 多列:
df1 = df[['code1', 'code2', 'name1', 'name2', 'something2']]
然后您可以使用另一个列表更改列名:
df1.columns = ['code_1', 'code_2', 'name_1', 'name_2', 'something_2']
然后你可以把它写回 csv
df1.to_csv('new filname.csv')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.