数値のxとyデータをnumpyの配列として取り、それをxの領域に(数値的に)積分するプログラムを書いています。私はこれをして、今は精度について疑問に思っています。numpyとの正確な合計
私は、math.fsum()
がsum()
でない特定のエラーを修正していることに気がつきました。numpy.sum
もこれらの修正を行っていますか?
sum = numpy.sum(array)
などと書いても、結果(合計)はできるだけ正確ですか?私はそれ自身がいくつかの操作の積である何千ものデータ点を合計しているので、小さな誤差が蓄積する可能性があります。私はPythonで十分精通していないので、小数点以下の桁までの精度が重要なときに使用する必要がある、より正確な数学モジュールがあるかどうかを知ることができます。
それは悪いことだ、OPの正確である:あなたが機能を持っている場合scipy.interpolate.UnivariateSpline.integral
:スプラインフィットを統合 使用事例。 'math.fsum'は間違いなくアドバイスされています。 –