使用Pandas往Excel写数据时是没法像写csv文件一样改个参数即可实现追加
想要实现Excel的追加的主要思路为:将原有的数据先读出来,然后与需要存入的数据一并添加即可。
先创建一个excel文件
import pandas as pd
data = {'city': ['北京', '上海', '广州', '深圳'],
'2018': [33105, 36011, 22859, 24221]}
data = pd.DataFrame(data)
data.to_excel('excel追加.xlsx', index=False)
方法一:append()
import pandas as pd
# 先将Excel中原有的数据读取出来
original_data = pd.read_excel('excel追加.xlsx')
data2 = {'city': ['北京', '上海', '广州', '深圳'],
'2018': ['a', 'b', 'c', 'd']}
data2 = pd.DataFrame(data2)
# 将新数据与旧数据合并起来
save_data = original_data.append(data2)
save_data.to_excel('excel追加.xlsx', index=False)
运行结果:
方法二:concat()
import pandas as pd
# 先将Excel中原有的数据读取出来
original_data = pd.read_excel('excel追加.xlsx')
data2 = {'city': ['北京', '上海', '广州', '深圳'],
'2018': ['a', 'b', 'c', 'd']}
data2 = pd.DataFrame(data2)
# 将新数据与旧数据合并起来
save_data = pd.concat([original_data, data2], axis=0)
save_data.to_excel('excel追加.xlsx', index=False)
方法三:
import pandas as pd
# 先将Excel中原有的数据读取出来
original_data = pd.read_excel('excel追加.xlsx')
city, year = [], []
for i in original_data.values:
city.append(i[0])
year.append(i[1])
city += ['北京', '上海', '广州', '深圳']
year += ['a', 'b', 'c', 'd']
data2 = {'city': city,
'2018': year}
data2 = pd.DataFrame(data2)
# # 将新数据与旧数据合并起来
data2.to_excel('excel追加.xlsx', index=False)
以上这三种方法都可以实现对excel进行追加的操作。