XlsxWriter python 在特定单元格中写入数据帧
XlsxWriter python to write a dataframe in a specific cell
可以将数据写入特定单元格,使用:
xlsworksheet.write('B5', 'Hello')
但是,如果您尝试从单元格 'B5' 开始编写整个数据帧 df2:
xlsworksheet.write('B5', df2)
TypeError: Unsupported type <class 'pandas.core.frame.DataFrame'> in write()
从特定单元格开始写入整个数据帧的方法应该是什么?
我问这个的原因是因为我需要在 excel.
中的同一个 sheet 中粘贴 2 个不同的 pandas 数据帧
您将字符串写入 Excel。要将 DataFrame 转换为字符串,您有几个选项,看起来 to_csv 是您最好的选择:
>>> string1 = df1.to_csv(writer)
>>> xlsworksheet.write('B5',string1)
>>> string2 = df2.to_csv(writer,'Sheet2')
>>> xlsworksheet.write('C5', string2)
请注意,这会将您的整个数据帧写入一个单元格。我知道在 Excel sheet 中将帧写入单个单元格的唯一方法是将它们组合起来,然后使用 to_excel:
>>> writer = ExcelWriter('output.xlsx')
>>> frame = pd.concat(df1, df2)
>>> frame.to_excel(writer,'Sheet1')
希望这对您有所帮助...
XlsxWriter 不直接写入 Pandas 数据帧。但是,它与 Pandas 集成在一起,因此您可以反过来做。
这是一个使用 Pandas 的 startrow
参数将 2 个数据帧写入同一个工作表的小示例 to_excel
:
import pandas as pd
df1 = pd.DataFrame({'Data': [10, 20, 30, 40]})
df2 = pd.DataFrame({'Data': [13, 24, 35, 46]})
writer = pd.ExcelWriter('pandas_simple.xlsx', engine='xlsxwriter')
df1.to_excel(writer, sheet_name='Sheet1')
df2.to_excel(writer, sheet_name='Sheet1', startrow=6)
输出:
您可以使用其他 to_excel
选项关闭列索引和行索引。
可以将数据写入特定单元格,使用:
xlsworksheet.write('B5', 'Hello')
但是,如果您尝试从单元格 'B5' 开始编写整个数据帧 df2:
xlsworksheet.write('B5', df2)
TypeError: Unsupported type <class 'pandas.core.frame.DataFrame'> in write()
从特定单元格开始写入整个数据帧的方法应该是什么?
我问这个的原因是因为我需要在 excel.
中的同一个 sheet 中粘贴 2 个不同的 pandas 数据帧您将字符串写入 Excel。要将 DataFrame 转换为字符串,您有几个选项,看起来 to_csv 是您最好的选择:
>>> string1 = df1.to_csv(writer)
>>> xlsworksheet.write('B5',string1)
>>> string2 = df2.to_csv(writer,'Sheet2')
>>> xlsworksheet.write('C5', string2)
请注意,这会将您的整个数据帧写入一个单元格。我知道在 Excel sheet 中将帧写入单个单元格的唯一方法是将它们组合起来,然后使用 to_excel:
>>> writer = ExcelWriter('output.xlsx')
>>> frame = pd.concat(df1, df2)
>>> frame.to_excel(writer,'Sheet1')
希望这对您有所帮助...
XlsxWriter 不直接写入 Pandas 数据帧。但是,它与 Pandas 集成在一起,因此您可以反过来做。
这是一个使用 Pandas 的 startrow
参数将 2 个数据帧写入同一个工作表的小示例 to_excel
:
import pandas as pd
df1 = pd.DataFrame({'Data': [10, 20, 30, 40]})
df2 = pd.DataFrame({'Data': [13, 24, 35, 46]})
writer = pd.ExcelWriter('pandas_simple.xlsx', engine='xlsxwriter')
df1.to_excel(writer, sheet_name='Sheet1')
df2.to_excel(writer, sheet_name='Sheet1', startrow=6)
输出:
您可以使用其他 to_excel
选项关闭列索引和行索引。