Я хочу использовать фрейм данных для сохранения данных, которые я буду использовать позже. Его структура такая:
индекс
имя
данные
0
A
100
1
B
4012< /td>
Мне удалось сохранить это в pkl, и иметь возможность читать эти данные с помощью df.loc, устанавливая для них правильные координаты, а затем сохраняя эти данные в переменную в блокноте Jupyter. Моя проблема заключается в том, что я пытаюсь написать правильный сценарий, который использует цикл для прохождения кадра данных в поисках правильного местоположения. Код выглядит так:
str_comp= 'something'
df= pd.read_pickle()
data_to_save= None
for i in df:
if df.loc[i,'name'] == str_comp:
data_to_save= df.loc[i,'data']
continue
Когда я пытаюсь запустить это, я получаю следующую ошибку:
415 raise KeyError(key) from err
416 if isinstance(key, Hashable):
--> 417 raise KeyError(key)
418 self._check_indexing_error(key)
419 raise KeyError(key)
KeyError: 'data'
Я пробовал df.loc и df.iloc, чтобы решить эту проблему, но каждый раз получаю одну и ту же ошибку. Я не уверен, о чем он просит, тем более, что когда я делаю это построчно в блокноте, все работает нормально. Только когда я пытаюсь пройти через него, как указано выше, я получаю эту ошибку.
edit: чтобы дать конкретную обратную трассировку-
KeyError Traceback (most recent call last)
Cell In[28], line 6
4 if var in dict:
5 if var1 != 'str':
----> 6 save_to_data(var,"var2")
File ~/script.py:48, in save_to_data(name, y)
47 def save_to_data(name,y):
---> 48 data= df_creation(name,y)
49 data_to_pickle(f"
Подробнее здесь: https://stackoverflow.com/questions/783 ... -using-loc