Метод 1:
Использование iloc
, lt
и drop
:
Мы выбираем последнюю строку с помощью iloc[-1]
, затем проверяем, какой столбец равен less than (lt)
25
и передайте этот столбец DataFrame.drop
df = df.drop(columns = df.columns[df.iloc[-1].lt(25)])
Метод 2:
Использование tail
, iloc
, gt
и all
:
df = df.loc[:, df.tail(1).gt(25).all()]
A C
2019-11-02 120 11
2019-11-03 119 15
2019-11-04 115 18
2019-11-05 119 20
2019-11-06 121 25
2019-11-07 117 30
Пошаговый метод 1 :
# select last row
df.iloc[-1]
A 117
B 24
C 30
Name: 2019-11-07, dtype: int64
# check which columns have value < 25:
df.iloc[-1].lt(25)
A False
B True
C False
Name: 2019-11-07, dtype: bool
# select those column(s) with boolean indexing:
df.columns[df.iloc[-1].lt(25)]
Index(['B'], dtype='object')
# finally pass it DataFrame.drop
df.drop(columns = df.columns[df.iloc[-1].lt(25)])
A C
2019-11-02 120 11
2019-11-03 119 15
2019-11-04 115 18
2019-11-05 119 20
2019-11-06 121 25
2019-11-07 117 30