pandas DataFrame のデータを使用して複数の Excel ワークシートを作成する 質問する

pandas DataFrame のデータを使用して複数の Excel ワークシートを作成する 質問する

データフレームに読み込まれ、forward fill (ffill) メソッドが適用されたワークシートがあります。

次に、2 つのワークシートを含む単一の Excel ドキュメントを作成したいと思います。

1 つのワークシートには、ffill メソッドが適用される前のデータフレーム内のデータが含まれ、次のワークシートには、ffill メソッドが適用されたデータフレームが含まれます。

最終的には、データフレームの特定の列にあるデータの一意のインスタンスごとに 1 つのワークシートを作成するつもりです。

次に、結果に VBA フォーマットを適用したいと思いますが、見出しを太字にフォーマットしたり、色を追加したりするために、Python を使用して Excel VBA を呼び出すために必要な DLL やアドオンなどがわかりません。

xlsxwriter が新しいワークブックを作成し、シートを追加するという点では部分的に成功しましたが、作成されたワークブックでは dataframe.to_excel 操作が機能しないようで、ワークブックは開きますが、シートは空白です。

import os
import time
import pandas as pd
import xlwt
from xlwt.Workbook import *
from pandas import ExcelWriter
import xlsxwriter

#set folder to import files from
path = r'path to some file'
#folder = os.listdir(path)

#for loop goes here

#get date
date = time.strftime('%Y-%m-%d',time.gmtime(os.path.getmtime(path)))

#import excel document
original = pd.DataFrame()
data = pd.DataFrame()

original = pd.read_excel(path,sheetname='Leave',skiprows=26)
data = pd.read_excel(path,sheetname='Leave',skiprows=26)

print (data.shape)
data.fillna(method='ffill',inplace=True)

#the code for creating the workbook and worksheets
wb= Workbook()
ws1 = wb.add_sheet('original')
ws2 = wb.add_sheet('result')
original.to_excel(writer,'original')
data.to_excel(writer,'result')
writer.save('final.xls')

ベストアンサー1

import pandas as pd

df1 = pd.DataFrame({'Data': ['a', 'b', 'c', 'd']})    
df2 = pd.DataFrame({'Data': [1, 2, 3, 4]})  
df3 = pd.DataFrame({'Data': [1.1, 1.2, 1.3, 1.4]})

with pd.ExcelWriter('multiple.xlsx', engine='xlsxwriter') as writer:
    df1.to_excel(writer, sheet_name='Sheeta')
    df2.to_excel(writer, sheet_name='Sheetb')
    df3.to_excel(writer, sheet_name='Sheetc')

おすすめ記事