熊猫检查序列值是否在间隔中

问题描述 投票:0回答:1

是否有更好的方法来检查pandas系列值是否在pandas Interval中:

import pandas as pd, numpy as np
x = pd.Series(np.linspace(4.0,7.8,num=20))
i = pd.Interval(5.0, 6.0, closed='left')

result = (i.left<=x) & (x<i.right)

是否有可能不太明确地计算结果,即不访问i.lefti.righti.closed?类似于x.isin(i)x in i

谢谢您的帮助!

python pandas intervals
1个回答
0
投票

您可以使用pandas.cut()

bins=[5.0,6.0]
pd.cut(x,bins,right=False).dropna()
5    [5.0, 6.0)
6    [5.0, 6.0)
7    [5.0, 6.0)
8    [5.0, 6.0)
9    [5.0, 6.0)
© www.soinside.com 2019 - 2024. All rights reserved.