假设我想构造一个虚拟变量,如果数字介于 1 和 10 之间,则该变量为真,我可以这样做:
df['numdum'] = df['number'].isin(range(1,11))
有没有办法在连续的时间间隔内做到这一点?因此,创建一个虚拟变量,如果数字在一个范围内,则该变量为真,允许非整数。
请您参考如下方法:
Series 对象(包括数据框列)有一个 between方法:
>>> s = pd.Series(np.linspace(0, 20, 8))
>>> s
0 0.000000
1 2.857143
2 5.714286
3 8.571429
4 11.428571
5 14.285714
6 17.142857
7 20.000000
dtype: float64
>>> s.between(1, 14.5)
0 False
1 True
2 True
3 True
4 True
5 True
6 False
7 False
dtype: bool
