从熊猫数据框中删除不符合序列的特定值

时间:2018-07-12 09:46:12

标签: python python-3.x python-2.7 pandas numpy

我有一个具有时间序列列的数据框: 除了很少的垃圾值外,它们遵循特定的顺序 我希望根据时间列删除行。可以看出1276.400与序列不匹配,因此需要删除整个行。 我知道如何根据条件删除熊猫行,但无法针对此特定问题提出解决方案

.......
    583.19732
    583.397583
    583.5975952
    1276.400146
    583.7976074
    583.9976196
    584.1975708
    584.396123
    584.597834
    ........

1 个答案:

答案 0 :(得分:1)

您将需要选择一些逻辑来确定您认为的异常值。我们对此无能为力。您最了解您的数据。

一种选择是使用pd.Series.quantile。这使您可以灵活地定义误差范围。另一方面,不是专门查看相邻的值。

df_filtered = df[df['col'] < df['col'].quantile(0.90)]

print(df_filtered)

          col
0  583.197320
1  583.397583
2  583.597595
4  583.797607
5  583.997620
6  584.197571
7  584.396123
8  584.597834