Python 查找数据帧中与条件匹配的行的第一个实例

Python 查找数据帧中与条件匹配的行的第一个实例,python,pandas,Python,Pandas,我有一个数据框,给出事件时间(以天为单位)和与每个事件相关的值 很抱歉将此作为代码段放入,不确定在这个问题中是否有其他方式将格式显示为表 +-----------+----------+ |事件时间|值| +-----------+----------+ | 389.9067 | 0.076014 | | 670.9632 | 0.190521 | | 1012.2839 | 0.266599 | | 1025.2452 | 0.355095 | | 1347.1064 | 0.45189

我有一个数据框,给出事件时间(以天为单位)和与每个事件相关的值

很抱歉将此作为代码段放入,不确定在这个问题中是否有其他方式将格式显示为表

+-----------+----------+
|事件时间|值|
+-----------+----------+
| 389.9067  | 0.076014 |
| 670.9632  | 0.190521 |
| 1012.2839 | 0.266599 |
| 1025.2452 | 0.355095 |
| 1347.1064 | 0.45189  |
| 3554.909  | 0.64213  |
| 3932.491  | 0.688693 |
| 4450.6369 | 0.730536 |
| 4819.5832 | 0.746905 |
| 6252.0017 | 0.880531 |
| 6951.3345 | 0.898307 |
| 7607.0877 | 0.945048 |
| 9044.0014 | 1.002455 |
| 9433.6679 | 1.083201 |

+-----------+----------+
这里有一种方法使用
searchsorted
-

df.EventTime[df.Value.searchsorted([.4,.7,.9])]
样本运行-

In [281]: df
Out[281]: 
    EventTime     Value
0  333.690569  0.097736
1  942.624952  0.136822
2  211.588088  0.246093
3  514.476542  0.483235
4  650.769771  0.643968
5  457.457053  0.687587
6   10.519801  0.730046
7  692.091846  0.833983
8  210.612897  0.922743
9  512.066182  0.964927

In [282]: df.EventTime[df.Value.searchsorted([.4,.7,.9])]
Out[282]: 
3    514.476542
6     10.519801
8    210.612897
Name: EventTime, dtype: float64

如果需要将
EvenTime
值作为数组,请改用
df.EventTime.values

这里有一种方法使用
searchsorted
-

df.EventTime[df.Value.searchsorted([.4,.7,.9])]
样本运行-

In [281]: df
Out[281]: 
    EventTime     Value
0  333.690569  0.097736
1  942.624952  0.136822
2  211.588088  0.246093
3  514.476542  0.483235
4  650.769771  0.643968
5  457.457053  0.687587
6   10.519801  0.730046
7  692.091846  0.833983
8  210.612897  0.922743
9  512.066182  0.964927

In [282]: df.EventTime[df.Value.searchsorted([.4,.7,.9])]
Out[282]: 
3    514.476542
6     10.519801
8    210.612897
Name: EventTime, dtype: float64

如果您需要
EventTime
值作为数组,请改用
df.EventTime.values

非常感谢,这正是我要找的。非常感谢,这正是我要找的。