df_new.loc[df_new.index>= df_new['low'].idxmin() ].loc[df_new['mark']==-1].head(1).index 这样写感觉太繁琐了,筛选应该是 loc 但 doc 似乎没发现有能同时设定行列的说明
目的是得到在 low 列的最小值以后,mark 列值为-1 的一个数的序列号
1
jyyx 2020-06-18 16:06:39 +08:00
mask = (df_new.index >= df_new['low'].idxmin()) & (df_new['mark'] == -1)
new_df.loc[mask, :].head(1).index |
2
jyyx 2020-06-18 16:17:50 +08:00 1
其实获取 index 不需要用 loc 了
mask = (df_new.index >= df_new['low'].idxmin()) & (df_new['mark'] == -1) mask.head(1).index |
3
billgreen1 2020-06-18 22:46:27 +08:00 via iPhone 1
df.query (“mark==-1”).sort_values ( by=“low”).head ( 1 )
|