Имея многостолбцовый фрейм данных, меня интересует, как сохранить/получить часть фрейма данных, которая находится между 25-м и 75-м процентилями для каждого столбца? Мне нужно удалить строки (которые являются просто временными шагами), которые имеют значения за пределами диапазона 25-75 процентилей.
import numpy as np
import pandas as pd
df1 = pd.DataFrame({
'400.0': [13.909261, 13.758734, 13.513627, 13.095409, 13.628918, 12.782643, 13.278548, 13.160153, 12.155895, 12.152373, 12.147820, 13.023997, 15.010729, 13.006050, 13.002356],
'401.0': [14.581624, 14.173803, 13.757856, 14.223524, 14.695623, 13.818065, 13.300235, 13.173674, 14.145402, 14.144456, 13.142969, 13.022471, 14.010802, 14.006181, 14.002641],
'402.0': [15.253988, 15.588872, 15.002085, 15.351638, 14.762327, 14.853486, 15.321922, 14.187195, 15.134910, 15.136539, 15.138118, 15.020945, 15.010875, 15.006313, 15.002927],
'403.0': [15.633908, 14.833914, 15.146499, 15.431543, 15.798185, 14.874350, 14.333470, 14.192128, 15.130119, 15.134795, 15.136049, 15.019307, 15.012037, 15.006674, 15.003002],
})
Я ожидаю увидеть меньшее количество строк, поэтому мне придется исключить ряд измерений, которые действуют как выбросы временных рядов.
Это из исходного набора данных, где по оси X показаны строки. Поэтому мне нужно как-то удалить этот блоб, установив критерии процентиля
В конце концов, я бы взял самые строгие критерии, чтобы применить их ко всему фрейму данных.
any
значений находятся за пределами, или только еслиall
. Или, возможно, установить порог? - person ALollz   schedule 28.09.2018