我無法在不收到錯誤的情況下對日期時間索引應用 searchsorted:df.index.searchsorted(pd.Series(np.array([df.index[0], df.index.max()])))>>>TypeError: searchsorted requires compatible dtype or scalar, not ndarray樣本數據:x = ['1998-01-07 13:17:00', '1998-01-07 13:18:00', '1998-01-07 13:19:00', '1998-01-07 13:20:00', '1998-01-07 13:21:00', '1998-01-07 13:22:00', '1998-01-07 13:23:00', '1998-01-07 13:24:00', '1998-01-07 13:25:00', '1998-01-07 13:26:00']df = pd.DataFrame(x)df.set_index(df.iloc[:, 0], inplace=True)df.index = pd.DatetimeIndex(df.index.values)df.index.searchsorted(pd.Series(np.array([df.index[0], df.index.max()])))為什么它不起作用?(聽說這是一個已修復的錯誤,但不知何故它仍然存在)我怎樣才能讓它發揮作用?我需要在多處理函數中應用這一行,它需要高效。
1 回答

回首憶惘然
TA貢獻1847條經驗 獲得超11個贊
如錯誤所述,您將 a 傳遞給與ndarray數據類型為 的 Seriespandas.Series.searchsorted()不兼容的。因此,要解決此問題,您需要像這樣調整給定系列的類型:df.indexpandas.DatetimeIndex
# just change this line
print(df.index.searchsorted(pd.DatetimeIndex([df.index[0], df.index.max()])))
# prints: [0, 9]
添加回答
舉報
0/150
提交
取消