API からデータをダウンロードし、json 応答を複数のワークシートの Excel (xlsx) シートに解析するプログラムを作成しました。
ただし、保存する属性に関するユーザーの選択によっては、Excel に空の列が存在する場合があります。Excel ファイルのすべてのワークシートから空の列を削除する方法はありますか?
パンダを介してこれを行うことができますが、この場合は不可能です。パンダとopenpyxlライブラリがpythonスクリプトに基づいてGUIを壊すためですか?
これを実装する他の方法はありますか?
編集:
現在の出力:
+----------+----------+--+----------+----------+
| Column A | Column B | | Column D | Column E |
+----------+----------+--+----------+----------+
| A1 | B1 | | D1 | |
| A2 | | | D2 | |
| A3 | B3 | | | E3 |
+----------+----------+--+----------+----------+
望ましい出力:
+----------+----------+----------+----------+
| Column A | Column B | Column D | Column E |
+----------+----------+----------+----------+
| A1 | B1 | D1 | |
| A2 | | D2 | |
| A3 | B3 | | E3 |
+----------+----------+----------+----------+
空白の列を削除するための現在のコード:
excel_file = pd.ExcelFile(path, engine='openpyxl')
df = pd.read_excel(excel_file,header=None, sheet_name=None)
writer = pd.ExcelWriter(finalpath,engine='openpyxl')
for key in df:
sheet= df[key].dropna(how="all").dropna(1,how="all")
sheet.to_excel(writer, key,index=False, header=False )
writer.save()
このコードを pandas ライブラリを参照しないものに置き換える必要があります。