我有一個時間序列資料集,我收到了一些事件。這些事件是當我從系統中收到特定錯誤時。現在我想從資料集中繪制一個圖表,并在我的時間序列圖表上放置來自事件的標記。所以我必須在兩個時間戳之間進行插值以獲得準確的 y 值。我現在的問題是當我輸入以下代碼時:
import numpy as np
test=np.interp(event, [timestamp_timeseries[k-1],
timestamp_timeseries[k]], [y_value[k-1], y_value[k])
型別:
timestamp_timeseries:datetime.datetime
y_value:int
事件:datetime.datetime(來自系統的錯誤的時間戳)
感謝您的幫助。
例子:
test=np.interp(
datetime.datetime(2022, 10, 11, 12, 24, 5, 922000),
[datetime.datetime(2022, 10, 11, 12, 6, 40, 480000),
datetime.datetime(2022, 10, 11, 12, 52, 51, 481000)],
[335872, 336896])
我的結果是:
TypeError: float() argument must be a string or a number, not 'datetime.datetime'
uj5u.com熱心網友回復:
使用日期時間的數字表示,例如從.timestamp()獲得的 Unix 時間。前任:
from datetime import datetime
import numpy as np
test=np.interp(
datetime(2022, 10, 11, 12, 24, 5, 922000).timestamp(),
[datetime(2022, 10, 11, 12, 6, 40, 480000).timestamp(), datetime(2022, 10, 11, 12, 52, 51, 481000).timestamp()],
[335872, 336896])
test
# 336258.3342553605
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/526473.html
