假设我有以下 Pandas DataFrame:
U A B
0 2000 10 20
1 3000 40 0
2 2100 20 30
3 2500 0 30
4 2600 30 40
Run Code Online (Sandbox Code Playgroud)
如何获得 A 和 B 都具有非零值且 (A+B)/2 大于的第一行的索引 15?
在这个例子中,我想得到,2因为它是具有非零 A 和 B 列的第一行,25其平均值大于15
请注意,此 DataFrame 很大,我正在寻找获取索引值的最快方法。
咱们试试吧:
df[(df.A.ne(0)&df.B.ne(0))&((df.A+df.B)/2).gt(15)].first_valid_index()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
57 次 |
| 最近记录: |