如何通过手动输入附加到熊猫csv文件?



Code

import pandas as pd
import csv
my_dict = { 'Customer'    : [],
'Product'     : []
}
x = input("Customer:")
y = input("Product:")
my_dict['Customer'].append(x)
my_dict['Product'].append(y)

df = pd.DataFrame(my_dict)

df.to_csv('data.csv', encoding='utf-8', index= True)

输出

,Customer,Product
0,Customer 1,Product 1

问题

如果我再次运行脚本并输入新值,如何附加新行?

如果我再次运行脚本并且我的输入将是Customer 2Product 2并添加新index。我希望输出在 csv 文件中如下所示:

,Customer,Product
0,Customer 1,Product 1
1, Customer 2, Product 2

但目前,它只是覆盖它。

您希望将数据追加到现有数据中,因此请尝试读取文件并追加数据:

import pandas as pd
import csv
try: #tries to read in existing data.csv file
df = pd.read_csv('data.csv', encoding='utf-8', index_col = 0)
except FileNotFoundError: #if no file exists yet, create an empty dataframe
df = pd.DataFrame()

my_dict = { 'Customer'    : [],
'Product'     : []
}
x = input("Customer:")
y = input("Product:")
my_dict['Customer'].append(x)
my_dict['Product'].append(y)

df = df.append(pd.DataFrame(my_dict))

df.to_csv('data.csv', encoding='utf-8', index= True)

最新更新