我得到了python2.7 numpy的陣列非常有線檢測。請看這個代碼。numpy的陣列乘10得到錯誤的結果
import numpy as np
times = np.arange(5., 85, 0.1)
print times
times = np.array(times * 10, dtype=np.int)
print times
原來times
應該[5.0 ~ 84.9]
。乘10後,它應該成爲[50 ~ 849]
,但結果是這樣的:
[ 50 51 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 ... ]
有之間50
和
這基本上是一個浮點問題。 '(times * 10)[2]'是'51.999999999999993'。如果你把它當作int來處理,它會返回51,而不是52. – ayhan