Python
1import numpy as np 2 3data1 = np.array([0.41345516168092838, 0.13935175380675846, 0.050097871119985204, 0.026963942404124031, 0.0037997849793913636]) 4data2 = np.array([ 0.63366851]) 5 6#np.sum(data1)とdata2は,同値である 7for i in range(data1.shape[0]): 8 data2 = data2 - data1[i]
以上のようなコードで、本来np.sum(data1)とdata2は同値であるため、np.sum(data1)-data2=0として扱いたいです。
しかし、誤差の影響で0に限りなく近い小数になってしまいます。
このような場合、うまく小数点を切り捨てて誤差をなくしたいのですがNumpy上での実装がどうのようにしたらよいかわかっていません。
np.roundのような四捨五入の方法は試したのですが、場合によっては誤差が発生して0にならないときがありました。
誤差をなくして必ず0になるように切り捨てたい場合どのようにしたらよいでしょうか。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。