gpt4 book ai didi

python - 当列值在另一行列值的范围内时,Pandas 选择行

转载 作者:行者123 更新时间:2023-11-30 22:20:49 25 4
gpt4 key购买 nike

我正在尝试从数据帧(100k-500k 行)创建子集格式如下

d = {'time':[1,2,3,5,7,9,9.5,10], 'val':['match','match','match','not','not','match','match','match']}
df = pd.DataFrame(d)

time val
0 1.0 match
1 2.0 match
2 3.0 match
3 5.0 not
4 7.0 not
5 9.0 match
6 9.5 match
7 10.0 match

我想选择一个包含时间范围内的所有行的子集范围有限。例如,如果范围为 <=1,则选择第一行和最后三行

我想要的输出:

   time    val
0 1.0 match
1 2.0 match
2 3.0 match
5 9.0 match
6 9.5 match
7 10.0 match

最佳答案

在一行中它看起来像这样:

df.loc[(df['time'].diff()<=1)|(df['time'].diff(-1)>=-1)]

关于python - 当列值在另一行列值的范围内时,Pandas 选择行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48767496/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com