python在Excel中追加dataframe数据

对于有些已经存在的Excel,我们只需要添加新的数据即可,不需要overwrite.那么可以利用openpyxl实现这种需求。

首先,需要安装openpyxl

pip install openpyxl

第一种方式:

import openpyxl
from openpyxl import load_workbook
import pandas as pd

file = r"myfile.xlsx"
df = pd.DataFrame({'A': 1, 'B': 2})

wb = load_workbook(file)
ws = wb.worksheets[0]   # wb["Sheet1"]
# ws.append只支持参数为列表的数据,所以这里我们进行转换
dlist = dldf2.values.tolist()

for i in range(len(dlist)):
    ws.append(dlist[i])
wb.save(file)
wb.close()

第二种方式,与1类似,但是我们使用openpyxl.utils.dataframe 中自带的dataframe_to_rows实现dataframe转list。

import openpyxl
from openpyxl import load_workbook
import pandas as pd

file = r"myfile.xlsx"
df = pd.DataFrame({'A': 1, 'B': 2})

wb = load_workbook(file)
ws = wb.worksheets[0]   # wb["Sheet1"]
for row in dataframe_to_rows(df ,header=False, index=False):
    ws.append(row)
wb.save(file)
wb.close()

这里主要用到的是openpyxl的worksheet append方法,因为参数必须为列表格式,所以我们将dataframe进行了转换。dataframe.values.tolist(), dataframe_to_rows(dataframe, header=False, index=False)都能够达到我们想要的目的。
这里就给需要的同学分享到这里,下次大家就知道如何将dataframe类型的数据,追加到Excel中了。
喜欢的就点个赞,your likes is my motivation!

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容