Pandas: удалить строки со значением ниже порога, но сохранить NAN - PullRequest
0 голосов
/ 06 августа 2020

Я работаю с Pandas (python) над набором данных, содержащим некоторые результаты ФМРТ.

Я пытаюсь отбросить строки, когда значение определенного столбца c ниже порогового значения Я установил. Дело в том, что я также хотел бы сохранить значения NAN.

df = df[(dfr['in_mm3'] > 270) or (np.isnan(df['in_mm3']) == True)]

Очевидно, это не работает, но вам нужно лучше понять, чего я пытаюсь достичь.

Любая помощь приветствуется.

Спасибо.

Ответы [ 2 ]

0 голосов
/ 06 августа 2020
df = df[(dfr['in_mm3'] > 270) | (pd.isnan(df['in_mm3']))]

Здесь мы печатаем значения, где pd.isnan (df ['in_mm3']) истинно и (dfr ['in_mm3']> 270) удовлетворяется

0 голосов
/ 06 августа 2020

Вы почти у цели. Это должно работать:

import numpy as np
df = df[ np.logical_or(dfr['in_mm3'] > 270, np.isnan(df['in_mm3'])) ]
...