我有一個帶有兩列的熊貓資料框,它們都是日期時間實體。第一列由測量時間組成,第二列是第一列與恒定偏移量的總和。例如,假設一個恒定的偏移量 1 給出:
| 指數 | 測量時間 | 偏移時間 |
|---|---|---|
| 0 | 0.1 | 1.2 |
| 1 | 0.5 | 1.5 |
| 2 | 1.2 | 2.2 |
| 3 | 2.4 | 3.4 |
我想找到與offset_time最接近的每個measurement_time的索引,條件是measurement_time必須小于或等于offset_time。因此,給定示例的解決方案是:
索引 = [2, 2, 2, 3]
我曾嘗試使用get_loc和制作蒙版,但由于我的資料框很大,這些解決方案效率太低。
任何幫助將不勝感激!
uj5u.com熱心網友回復:
讓我們np.searchsorted用來查找最接近匹配的索引
s = df['Measurement_time'].sort_values()
np.searchsorted(s, df['offset_time'], side='right') - 1
結果:
array([2, 2, 2, 3], dtype=int64)
注意:.sort_values如果您的資料框已經在列上排序,您可以跳過該部分Measurement_time
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/448032.html
