我偶然發現了一個簡單的問題,它阻礙了我進一步的進步。我想計算循環中兩個項的除法日志,然后將每個結果保存到一個新數組中。
因此,我的數據集已經用Sklearn MinMaxScaler進行了縮放,我要執行的精確計算如下:
logs = np.empty(12530)
for i in data_prepared - 1:
logs[i] = np.log10(data_prepared[i + 1] / data_prepared[i])
但是math.log10()
和np.log10
都返回索引錯誤:
IndexError: arrays used as indices must be of integer (or boolean) type
如何執行所需的計算?
編輯:data_prepared數據類型為float32
如果
data_prepared
是numpy.array()
,則循環將返回此列表的值,而不是索引。您的錯誤提示正在發生這種情況,因為來自data_prepared
的值不一定是整數或布爾值。與
所以你應該這么做
或使用評論中指出的dot產品。