Выберите ближайшие значения вокруг определенного значения в столбце - PullRequest
0 голосов
/ 18 апреля 2019

У меня есть следующий df, и мне нужно найти все значения, которые равны или близки к 660 в значении столбца.Подробно это означает, что я должен как-то перебрать значение столбца, чтобы найти все эти 660 или ближайшие значения.Значения в значении столбца находятся в диапазоне от 1 до (конец изменяется), и когда достигнут конец, значения начинаются снова с 1. Наконец, я должен выбрать всю строку всех других столбцов, где значение == 660 (или ближайший).У меня есть более или менее вспомогательный помощник столбца, который имеет то же значение в диапазоне значений от 1 до конца.Это может быть полезно для получения результата (помощь столбца всегда 0 или 1).Вот пример df:

helper      value
0         1
.
.
.
0       647
0       649
0       652  
0       654
0       656
0       659
0       661
0       663 
0       665
0       667
0       669
0       672
0       674
0       676
0       678
0       681
.
.
.
0       1000
1       1
.
.
.
1       647
1       649
1       652
1       654
1       656
1       659
1       661
1       663
1       665
1       667
1       669
1       672
1       674
1       676
1       678
1       681
.
.
1       1500
0       1
.
.
.
0       645
0       647
0       650
0       652
0       654
0       656
0       658
0       661
0       663
0       665
0       667
0       669
0       672
0       674
0       676
0       679
.
.
.
0       980

Спасибо за любую помощь или советы!

1 Ответ

0 голосов
/ 18 апреля 2019

Недостаточно информации для правильного ответа. Каков размер кадра данных? И что вы подразумеваете под ближайшим? Решение "где значение == 660" может быть сделано путем применения маски к серии панд.

Что-то вроде df = df[(df['value'] == 660)] должно делать.

Если у вас есть диапазон чисел, вы можете использовать логические операторы для маски:

mask = df.value > 650 & df.value < 670
df = df[mask]

Дайте мне знать, если это то, что вы ищете

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...