Выберите смещенные значения столбца на основе другого столбца, условного в пандах - PullRequest
0 голосов
/ 28 мая 2019

У меня есть фрейм данных:

A     B
100   0.00
50   -0.50
100   1.00
120   0.20                              

Я хотел бы выбрать смещенные значения в столбце A на основе определенного условия в столбце B, например, если B> = 0,20 и мой желаемый сдвигшаг 2, я бы получил 100 (от B = 1,00) и 50 (от B = 0,20) строк, где B <0,20 можно отбросить. </p>

1 Ответ

1 голос
/ 28 мая 2019

Вы можете использовать shift с np.where для условного получения сдвинутых значений:

shiftstep = 2

df['shift'] = np.where(df['B'].ge(0.2), df['A'].shift(shiftstep), np.NaN)

     A    B  shift
0  100  0.0    NaN
1   50 -0.5    NaN
2  100  1.0  100.0
3  120  0.2   50.0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...