Python Dataframe: выбор строк на основе значений предыдущих строк - PullRequest
0 голосов
/ 15 сентября 2018

У меня есть следующий объект данных в Python: df:

   1_count  136088194_count  136088202_count  Label
1  0.0      0.0              0.0              False
2  0.0      0.0              0.0              False
3  0.0      0.0              0.0              True 
4  0.0      0.0              0.0              False
5  0.0      0.0              0.0              False
6  0.0      0.0              0.0              True 
7  6.0      0.0              0.0              False
8  0.0      0.0              0.0              False
9  0.0      0.0              0.0              False

Я хочу создать новый Dataframe, который содержит все строки, которые появляются перед значением «Label» «True» в последнем столбце.

В этом примере это будут строки 2 и 5.

Результат должен выглядеть следующим образом:

   1_count  136088194_count  136088202_count  Label
2  0.0      0.0              0.0              False
5  0.0      0.0              0.0              False

Я знаю, что могу получить доступ к строкам 3 и 6 через:

df = df.loc[df['Label']==True]

но как мне сдвинуть кадр данных к предыдущим строкам?

1 Ответ

0 голосов
/ 15 сентября 2018

Одним из способов будет использование shift

df = df.loc[df.Label.shift(-1)==True]
print(df)

# Output

   1_count  136088194_count 136088202_count   Label
2   0.0          0.0             0.0          False
5   0.0          0.0             0.0          False
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...