Я хочу изменить все значения меньше 5 в следующем df с nan, но столбец B следует исключить из операции, не удаляя его.
A B C D
DateTime
2016-03-03 05:45:00 1 2 3 4
2016-03-03 06:00:00 1 2 3 4
2016-03-03 06:15:00 1 2 3 4
2016-03-03 06:30:00 1 2 3 4
2016-03-03 06:45:00 1 2 3 4
желаемый результат
A B C D
DateTime
2016-03-03 05:45:00 NaN 2 NaN NaN
2016-03-03 06:00:00 NaN 2 NaN NaN
2016-03-03 06:15:00 NaN 2 NaN NaN
2016-03-03 06:30:00 NaN 2 NaN NaN
2016-03-03 06:45:00 NaN 2 NaN NaN
Я могу взять столбец B из df, затем применить df[df < 5] = np.nan
к оставшемуся df, затем снова объединить их.Удаление столбца B перед операцией также может быть другим подходом.Но я ищу более эффективный способ, один лайнер, если это возможно.Пытаюсь df[df.columns.difference(['B']) < 5] = np.nan
, но это не правильно.Также df[(df.B != 'Other') < 5] = np.nan
без успеха.