Получение Невозможно маскировать с нелогическим массивом, содержащим значения NA/NaN... Но пропущенных значений нетPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Получение Невозможно маскировать с нелогическим массивом, содержащим значения NA/NaN... Но пропущенных значений нет

Сообщение Anonymous »


У меня это работало, а теперь я «что-то» изменил, и это больше не работает. У меня есть таблица в Excel, которую я читаю в файл df. Это работает так, как ожидалось. Я считываю их, а затем фильтрую, чтобы иметь только те строки данных, которые соответствуют определенным критериям. Вот код:

df = excel_range_upper_left.options(pd.DataFrame,expand='table', header=1, индекс = Ложь). значение print(f'Проверить отсутствие') для c в df.columns: count = df[c].isnull().sum() print(f'Col {c} имеет {count} пропущенных значений') print(f'Проверка недостающих файлов закончена') df = df[df["Фаза"].str.contains('2')] #, na=False)] Цикл for циклически перебирает столбцы df в поисках пропущенных значений. Все они возвращаются как 0 пропущенных значений.

Затем я выполняю последний оператор, который должен (я думаю) просто отфильтровать df в новый df (с тем же именем), который должен иметь строковое значение «2» в столбце «Фаза». И здесь возникает ошибка Невозможно замаскировать....

Я предполагаю, что где-то в таблице все еще есть пропущенное значение, но я исчерпал свои возможности его найти (я также пробовал следующее - но это приводит к тому же самому, что и исходный df, и все равно выдает ошибки :

print(f'{exer_df.dropna(axis=1)}') Если я изменю строку фильтра на следующую, включив в нее параметр na=False, все будет работать. Но я не знаю почему...

exer_df = exer_df[exer_df["Phase"].str.contains('2', na=False)] У кого-нибудь есть идеи и помощь?

Для полноты вот результаты цикла for, а затем ошибка:
Проверить отсутствие пропусков Тип столбца: 0 отсутствующих значений Подтип столбца: 0 пропущенных значений Col Phase как 0 пропущенных значений Col Части тела как 0 отсутствующих значений Столбец Устанавливается как 0 отсутствующих значений Столбец Повторяется как 0 пропущенных значений Col Tempo как 0 пропущенных значений Col Intensity как 0 пропущенных значений Col Rest Period как 0 пропущенных значений Col Упражнение как 0 пропущенных значений Col Prim Mover как 0 пропущенных значений Завершена проверка на наличие миоссов Traceback (последний вызов последний): Файл «c:/Users/kirby/OneDrive/Beating Old Age Book/Blog Page Text/nutrition/calculations/plan_creator.py», строка 271, в мкп() Файл «c:/Users/kirby/OneDrive/Beating Old Age Book/Blog Page Text/nutrition/calculations/plan_creator.py», строка 188, в mcp exer_df = exer_df[exer_df["Фаза"].str.contains('2')] #, na=False)] Файл «C:\Users\kirby\AppData\Local\Programs\Python\Python38-32\lib\site-packages\pandas\core\frame.py», строка 3014, в __getitem__ если com.is_bool_indexer(ключ): Файл «C:\Users\kirby\AppData\Local\Programs\Python\Python38-32\lib\site-packages\pandas\core\common.py», строка 114, в is_bool_indexer поднять ValueError (na_msg) ValueError: невозможно замаскировать нелогический массив, содержащий значения NA/NaN.
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»