使用 pandas 将不同位置的行附加到现有的 csv 文件
Posted
技术标签:
【中文标题】使用 pandas 将不同位置的行附加到现有的 csv 文件【英文标题】:Append rows from different position to a existing csv file using pandas 【发布时间】:2020-11-06 02:36:50 【问题描述】:我正在尝试在现有 csv 文件中追加行。例如:-
number name zipcode country Total_store ratings
1 A 200201
使用dict方法追加行
'country': 'htttp', 'Total_store': 'dsddsa', 'ratings': 'sfsfsf'
我尝试使用 df.to_csv(f, header=False, index=False) 将其添加到文件底部,但我希望它附加到第一行的邮政编码旁边。 我该怎么做请帮忙..
【问题讨论】:
您可以尝试将您的字典转换为数据框,然后将它们连接起来 我该怎么做请解释一下 【参考方案1】:# 1 - Creating your original dataframe. Assume its imported from csv
tst = pd.DataFrame(['number': 1, 'name': 'A', 'zipcode': 200201, 'country': '', 'Total_store': '', 'ratings': ''])
# 2 - Creating your dict
md = 'country': 'htttp', 'Total_store': 'dsddsa', 'ratings': 'sfsfsf'
# 3 - Convert dictionary to dataframe
dict_to_df = pd.DataFrame([md])
# 4 - Concat your data
res_df = pd.concat([tst[['number', 'name', 'zipcode']], dict_to_df], axis=1)
这是输出:
number name zipcode country Total_store ratings
0 1 A 200201 htttp dsddsa sfsfsf
然后您可以使用res_df.to_csv('/path/to/save', index=False)
导出到 csv
【讨论】:
你能帮我迈出第一步吗?我正在获取这样的 csv 文件 df = pd.read_csv('test.csv') 它有 200 行预填充了数字名称邮政编码.. 在我的代码中,我手动创建了数据框以供参考。你不必这样做,因为你有一个 csv。下一步是创建第 2 步中提到的字典列表 国家 Total_score 评级国家 Total_score 评级 0 NaN NaN NaN htttp dsddsa sfsfsf 1 NaN NaN NaN NaN NaN NaN 2 NaN NaN NaN NaN NaN NaN 3 NaN NaN NaN NaN NaN NaN 4 NaN NaN NaN NaN NaN NaN 。 ... .. .. ... ... ... 148 NaN NaN NaN NaN NaN NaN 149 NaN NaN NaN NaN NaN NaN 150 NaN NaN NaN NaN NaN NaN 151 NaN NaN NaN NaN NaN NaN 152 NaN NaN NaN NaN NaN NaN [153 行 x 6 列] 这是删除我的 csv 数据 你能分享你的整个代码吗?没有它很难调试以上是关于使用 pandas 将不同位置的行附加到现有的 csv 文件的主要内容,如果未能解决你的问题,请参考以下文章
如何将 Excel 转换为 JSON 并将其附加到现有的 JSON 文件?