コメントいただいているのに、ご連絡おくれてすみません。毎日、PythonでエクセルのファイルをPythonのpandasで読み込んでいるのですが、今日、急に、pd.read_excelでエクセルを読み込んだところ、データフレームとして読み込んでくれなくなりました。
print(df1)とすると、
Empty Dataframe と出てきます。
コードは以下の感じです。
python
1import pandas as pd 2import numpy as np 3f1 = r"C:\Users\akira.onozuka\Downloads\変更管理_総務本部ver2.0.xlsx" 4#f1 = r"C:\Users\akira.onozuka\Downloads\Book1.xlsx" 5 6f2 = r"C:\Users\akira.onozuka\Downloads\変更管理_経理調達本部ver2.0.xlsx" 7f3 = r"C:\Users\akira.onozuka\Downloads\変更管理_教育研修本部ver2.0.xlsx" 8f4 = r"C:\Users\akira.onozuka\Downloads\変更管理_人事本部ver2.0.xlsx" 9f5 = r"C:\Users\akira.onozuka\Downloads\変更管理_マーケティング本部ver2.0.xlsx" 10f6 = r"C:\Users\akira.onozuka\Downloads\変更管理_ファーマコビジランス本部ver2.0.xlsx" 11f7 = r"C:\Users\akira.onozuka\OneDrive - Accenture\Desktop\台帳\変更管理まとめ.xlsx" 12 13df1 = pd.read_excel(f1,header=[1,2,3]) 14df1.columns = ["_".join(cols) for cols in df1.columns] 15print(df1.columns)
これをおこなうと
Empty Dataframe
と出てきます。df1~df7は同じ構造をもったエクセルで、
例えば、df2.columnsとやると、
##ここから
Index(['Unnamed: 0_level_0_Unnamed: 0_level_1_No',
'台帳記載日付_Unnamed: 1_level_1_起票日\n(記載不要)',
'台帳記載日付_Unnamed: 2_level_1_最終更新日', '台帳記載日付_Unnamed: 3_level_1_変更タイプ',
'依頼元_Unnamed: 4_level_1_依頼元\n会社名', '依頼元_Unnamed: 5_level_1_本部名',
'依頼元_Unnamed: 6_level_1_事業部名', '依頼元_Unnamed: 7_level_1_グループ名',
'依頼元_Unnamed: 8_level_1_依頼者名', '依頼元_Unnamed: 9_level_1_業務仕様書\n管理No',
'依頼受付_Unnamed: 10_level_1_依頼受付\n本部名', '依頼受付_Unnamed: 11_level_1_事業部名',
'依頼受付_Unnamed: 12_level_1_グループ名', '依頼受付_Unnamed: 13_level_1_申請者',
'依頼受付_Unnamed: 14_level_1_申請日', '依頼受付_Unnamed: 15_level_1_変更番号',
'依頼受付_Unnamed: 16_level_1_変更概要', '依頼受付_Unnamed: 17_level_1_変更理由',
'変更内容_Unnamed: 18_level_1_変更前', '変更内容_Unnamed: 19_level_1_変更後',
'実施時期_予定_開始日', '実施時期_予定_終了日', '実施時期_実績_開始日', '実施時期_実績_終了日',
'業務量(FTE)変更_Unnamed: 24_level_1_有無', '業務量(FTE)変更_予定_予定工数(h)',
'業務量(FTE)変更_予定_工数詳細', '業務量(FTE)変更_実績_年間合計\n実績工数(h)', '業務量(FTE)変更_実績_7月',
'業務量(FTE)変更_実績_8月', '業務量(FTE)変更_実績_9月', '業務量(FTE)変更_実績_10月',
'業務量(FTE)変更_実績_11月', '業務量(FTE)変更_実績_12月', '業務量(FTE)変更_実績_1月',
'業務量(FTE)変更_実績_2月', '業務量(FTE)変更_実績_3月', '業務量(FTE)変更_実績_4月',
'業務量(FTE)変更_実績_5月', '業務量(FTE)変更_実績_6月',
'業務マニュアル変更_Unnamed: 40_level_1_有無', '業務マニュアル変更_Unnamed: 41_level_1_文書名',
'業務マニュアル変更_Unnamed: 42_level_1_ページ',
'業務マニュアル変更_Unnamed: 43_level_1_修正担当者',
'業務運営管理部エスカレフラグ_Unnamed: 44_level_1_フラグ',
'業務運営管理部エスカレフラグ_Unnamed: 45_level_1_概要',
'ステータス_Unnamed: 46_level_1_ステータス\n内容', 'ステータス_Unnamed: 47_level_1_更新日',
'ステータス_Unnamed: 48_level_1_備考', 'e_e_e'],
dtype='object')
##ここまで
と出てきます。昨日まで、df1は読み込めたのですが、元のエクセルをみても、特に問題がなさそうです。ちなみに、エクセルの内容を別の新しいエクセルにコピペして新しいファイルにしたら、読み込むことができました。
エラーメッセージも特になく、何が原因かわかりません。
原因として、何が考えられるでしょうか。
なお、おなじようなフォーマットのエクセルをいくつも読んで、縦結合するプログラムなのですが、その他のエクセルでは、同様の事象が起きておらず、その1点のエクセルのみが、何か、おかしなことになっていると思われるのですが、一見しても、今までと変わらず、原因が特定できません。
お知恵を拝借できれば幸いです。
何卒、よろしくお願い申し上げます。

回答1件
あなたの回答
tips
プレビュー