Pythonで関数の二乗平均平方根を計算したい。私の関数は、y = f(x)のような単純な形式です。 xとyは配列です。
Numpy and Scipy Docs を試しましたが、何も見つかりませんでした。
次の擬似コードで指定された式を計算すると仮定します。
ms = 0
for i = 1 ... N
ms = ms + y[i]^2
ms = ms / N
rms = sqrt(ms)
つまり、y
の要素の2乗値の平均の平方根です。
Numpyでは、次のようにy
を単純に2乗して、その 平均 を取得し、次に 平方根 を取得できます。
rms = np.sqrt(np.mean(y**2))
したがって、たとえば:
>>> y = np.array([0, 0, 1, 1, 0, 1, 0, 1, 1, 1]) # Six 1's
>>> y.size
10
>>> np.mean(y**2)
0.59999999999999998
>>> np.sqrt(np.mean(y**2))
0.7745966692414834
他の質問をするつもりなら、質問を明確にしてください。