【发布时间】:2020-10-11 18:41:58
【问题描述】:
我有一个关于如何从大型 df 中过滤和选择异常数据集的问题。例如,我有一个 df:
import pandas as pd
import numpy as np
data = {"code": ['a', 'a', 'a', 'b', 'b', 'c', 'c', 'c', 'd', 'd'],
"number": [7, 5, 2, 4, 6, 9, 6, 2, 8, 2]}
df = pd.DataFrame(data=data)
code number
0 a 7
1 a 5
2 a 2
3 b 4
4 b 6
5 c 9
6 c 6
7 c 2
8 d 8
9 d 2
在这个df中,大部分数据遵循一个规则,在同一个'code'组中,一个更大的数字出现在开头。例如,在“a”组中,它在数据框中的值如下:7>5>2;在'c'组中,它的值如下:9>6>2,在'd'组中相同的模式8> 2。但不是在'b'组中,因为较小的值4排列在6之前。所以我希望过滤仅异常子集 b 并具有如下输出:
code number
0 b 4
1 b 6
有人有什么想法吗?非常感谢您的帮助。
【问题讨论】:
标签: python pandas dataframe filter