#pandas
#pandas
Вопрос:
У меня есть простой фрейм данных как :
0 1 2 3
1 NaN like dislike
2 Cow dog snail
После удаления значения nan фрейм данных :
0 1 2 3
2 Cow dog snail
Теперь, когда я пытаюсь выполнить следующий код для печати значений, он выдает ошибку ключа :
for i in range(len(data)):
print(data.loc[i,:])
Любая помощь будет оценена.
Комментарии:
1. Не
machine-learning
вопрос, пожалуйста, не спамите нерелевантные теги (удалены).
Ответ №1:
Пожалуйста, добавьте следующую строку после удаления значений nan:
data = data.reset_index(drop=True)
Ответ №2:
Вы удаляете значение с определенным индексом, в котором после удаления значений NA больше не будет существовать. В вашем конкретном случае индекс 1
будет удален, и вы не сможете выполнить итерацию вашего фрейма данных len
. Я настоятельно рекомендую вам использовать iterrows
вместо этого, поскольку это лучшая форма. Пример:
for index, value in mydataframe.iterrows():
print(index, " ", value)
# 2
# 1 Cow
# 2 dog
# 3 snail
Значение относится к классу 'pandas.core.series.Series'
, который в вашем случае функционирует во многом как словарь. Обратите внимание на имена столбцов, которые в точности совпадают с именами в вашем примере.