'метка [0] не находится в [index]'

когда я выдаю следующий код в python, где myfun - это имя моей функции, B - это кадр данных Panda:

myfun(B,10)

он дает ошибку в этой строке в функции

A=(data.loc[ii]>=A1) & (data.loc[ii]<A2)

где B и данные одинаковы, а A1 и A2 - числа. Ошибка заключается в следующем:

pandas

Я читал все на вашем сайте, это не относится к моему делу. как никто не объяснил, о чем говорит эта ошибка.

Может ли кто-нибудь сказать, где, возможно, у меня возникнут проблемы и как я могу это исправить? Что еще означает сказать, что метка [0] не находится в [index]? что есть метка [0] в моем случае.

python,pandas,numpy,

1

Ответов: 1


1 принят

Из iiдокументации:

DataFrame.loc

Доступ к группе строк и столбцов по меткам (-ам) или логическому массиву. .loc [] в первую очередь основан на метке, но может также использоваться с булевым массивом. Допустимыми входами являются:

  • Единая метка, например 5 или «a» (обратите внимание, что 5 интерпретируется как метка индекса и никогда не является целочисленной позицией по индексу).

  • Список или массив меток, например ['a', 'b', 'c'].

  • Объект среза с метками, например 'a': 'f'.

  • Булевой массив той же длины, что и отрезанная ось, например [True, False, True].

  • Вызываемая функция с одним аргументом (вызывающая серия, DataFrame или панель) и возвращает действительный вывод для индексирования (один из указанных выше)

Поскольку я предполагаю, что df.ilocэто тип integer, вам нужно использовать вместо этого:A = (data.iloc[ii] >= A1) & (data.iloc[ii] < A2)

питон, панды, NumPy,
Похожие вопросы