900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > python往excel特定单元格中写入文本_将值写入python中pandas中工作表中的特定单元格...

python往excel特定单元格中写入文本_将值写入python中pandas中工作表中的特定单元格...

时间:2020-01-08 16:06:22

相关推荐

python往excel特定单元格中写入文本_将值写入python中pandas中工作表中的特定单元格...

UPDATE2:将数据附加到现有Excel工作表,保留其他(旧)工作表:

import pandas as pd

from openpyxl import load_workbook

fn = r'C:\Temp\.data\doc.xlsx'

df = pd.read_excel(fn, header=None)

df2 = pd.DataFrame({'Data': [13, 24, 35, 46]})

writer = pd.ExcelWriter(fn, engine='openpyxl')

book = load_workbook(fn)

writer.book = book

writer.sheets = dict((ws.title, ws) for ws in book.worksheets)

df.to_excel(writer, sheet_name='Sheet1', header=None, index=False)

df2.to_excel(writer, sheet_name='Sheet1', header=None, index=False,

startcol=7,startrow=6)

writer.save()

更新:您的Excel文件没有标题,因此您应该相应地处理它:

In [57]: df = pd.read_excel(fn, header=None)

In [58]: df

Out[58]:

0 1

0 abc def

1 ghi lmn

In [59]: df2

Out[59]:

Data

0 13

1 24

2 35

3 46

In [60]: writer = pd.ExcelWriter(fn)

In [61]: df.to_excel(writer, header=None, index=False)

In [62]: df2.to_excel(writer, startcol=7,startrow=6, header=None, index=False)

In [63]: writer.save()

老答案:

您可以使用以下技巧:

首先将excel文件的现有内容读入新DF:

In [17]: fn = r'C:\Temp\b.xlsx'

In [18]: df = pd.read_excel(fn)

In [19]: df

Out[19]:

A B C D

0 val1 NaN val3 val4

1 val11 val22 NaN val33

现在我们可以把它写回来并添加一个新的DF2:

In [20]: writer = pd.ExcelWriter(fn)

In [21]: df.to_excel(writer, index=False)

In [22]: df2.to_excel(writer, startcol=7,startrow=6, header=None)

In [23]: writer.save()

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。