Ali*_*Ali 4 python dataframe pandas
我有一个数据帧数组,其中包含一些列,其中之一是“时间”我想过滤时间处于特定间隔的行
为了简化问题,我制作了一个具有整数值和整数间隔的数据框
data=pd.DataFrame({'A':[1,2,3,4,5,6,7,8,9]})
interval=pd.Interval(1,4)
data[data['A'] in interval]
Run Code Online (Sandbox Code Playgroud)
它显示: ValueError:系列的真值不明确。使用 a.empty、a.bool()、a.item()、a.any() 或 a.all()。
但预期结果是 [2,3,4]
between
pandas.Series.between
将返回一个可用于过滤数据帧的布尔掩码。
data[data.A.between(1, 4)]
A
0 1
1 2
2 3
3 4
Run Code Online (Sandbox Code Playgroud)
query
pandas.DataFrame.query
也可以用来过滤
data.query('1 <= A <= 4')
A
0 1
1 2
2 3
3 4
Run Code Online (Sandbox Code Playgroud)
isin
pandas.Series.isin
可以在特殊整数情况下使用range
. 类似于between
我们创建一个布尔掩码。
data[data.A.isin(range(1, 5))]
A
0 1
1 2
2 3
3 4
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8034 次 |
最近记录: |