実現したいこと
ここに実現したいことを箇条書きで書いてください。
- PythonにてExcelのデータ項目を参照したいです。どう書き直したらいいのか教えて頂きたいです。
前提
ここに質問の内容を詳しく書いてください。
現状シートの参照まではできており、特定のデータ項目を参照せずに、print(DATKND_C)と打つと正常にデータが出力されます。
しかしdf_DATKND_C["データ種類コード"] = df_DATKND_C["データ種類コード"].str.zfill(4)のようにデータ項目を参照するとKeyErrorが発生してしまいます。
発生している問題・エラーメッセージ
KeyError Traceback (most recent call last) File ~\AppData\Local\anaconda3\Lib\site-packages\pandas\core\indexes\base.py:3653, in Index.get_loc(self, key) 3652 try: -> 3653 return self._engine.get_loc(casted_key) 3654 except KeyError as err: File ~\AppData\Local\anaconda3\Lib\site-packages\pandas\_libs\index.pyx:147, in pandas._libs.index.IndexEngine.get_loc() File ~\AppData\Local\anaconda3\Lib\site-packages\pandas\_libs\index.pyx:176, in pandas._libs.index.IndexEngine.get_loc() File pandas\_libs\hashtable_class_helper.pxi:7080, in pandas._libs.hashtable.PyObjectHashTable.get_item() File pandas\_libs\hashtable_class_helper.pxi:7088, in pandas._libs.hashtable.PyObjectHashTable.get_item() KeyError: 'データ種類コード' The above exception was the direct cause of the following exception: KeyError Traceback (most recent call last) Cell In[67], line 4 1 #In[8] 2 #マスタファイルの読み込み 3 df_DATKND_C = pd.read_excel(master_file_path, sheet_name = sheet_name_DATKND_C, dtype={"データ種類コード":str}) ----> 4 df_DATKND_C["データ種類コード"] = df_DATKND_C["データ種類コード"].str.zfill(4) 5 df_DATKND_C["ATM入出金対象"] = "" 6 df_DATKND_C.loc[df_DATKND_C["取引形態種類"].isin(1,2),"ATM入出金対象"] = "●" File ~\AppData\Local\anaconda3\Lib\site-packages\pandas\core\frame.py:3761, in DataFrame.__getitem__(self, key) 3759 if self.columns.nlevels > 1: 3760 return self._getitem_multilevel(key) -> 3761 indexer = self.columns.get_loc(key) 3762 if is_integer(indexer): 3763 indexer = [indexer] File ~\AppData\Local\anaconda3\Lib\site-packages\pandas\core\indexes\base.py:3655, in Index.get_loc(self, key) 3653 return self._engine.get_loc(casted_key) 3654 except KeyError as err: -> 3655 raise KeyError(key) from err 3656 except TypeError: 3657 # If we have a listlike key, _check_indexing_error will raise 3658 # InvalidIndexError. Otherwise we fall through and re-raise 3659 # the TypeError. 3660 self._check_indexing_error(key) KeyError: 'データ種類コード'
該当のソースコード
Python
試したこと
df_DATKND_C = pd.read_excel(master_file_path, sheet_name = sheet_name_DATKND_C)
print(df_DATKND_C)
→これは正常にデータが出力されます。
df_DATKND_C = pd.read_excel(master_file_path, sheet_name = sheet_name_DATKND_C)
df_DATKND_C.dtypes
→これも正常にデータ項目の型桁が出力されます。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
0 コメント