-1

たぶん、タイトルは少し紛らわしいようです。

たとえば、sin(x)、3 sine(x)、sin(x)+1などの3つの関数があります。Xは1から100になります。これらの3つの関数値について、標準偏差(+および-)で平均の線を描画するにはどうすればよいですか。各xで3つの関数値(sin(x)、3 sin(x)、sin(x)+1)の平均と標準偏差を計算する必要があると思います。ただし、Pythonでそれを行う方法がわかりません。Scipyには標準偏差と平均の関数があることを私は知っています。それはこの場合に当てはまりますか?多分これはばかげた質問です。しかし、私はかなり初心者です。助けてくれて本当に感謝しています。

よろしくお願いします、

アイザック

4

2 に答える 2

1

あなたが何を意味するのか正確にはわかりませんが、おそらく以下が有用な例です:

>>> import numpy as np
>>> x = np.arange(1,100)
>>> m = (sin(x)+1).mean()
>>> s = (sin(x)+1).std()
>>> print m, s
1.00383024876 0.710743876537

[さらに明確にした後で編集]

ただし、さまざまな関数のxポイントあたりの平均が必要な場合は、次のように機能します。

>>> y = np.array([sin(x), 3*sin(x), sin(x)+1])
>>> m = y.mean(axis=0)
>>> s = y.std(axis=0)

これにより、100の平均と100のstddevが得られます。

組み合わせた関数の平均が必要な場合は、基本的に最初の例に戻ります。

>>> m = (sin(x) + 3*sin(x) + sin(x)+1).mean()
>>> s = (sin(x) + 3*sin(x) + sin(x)+1).std()
>>> print m, s
1.01915124381 3.55371938269

どのオプションがあなたに適用できるかは、あなたの質問の文脈に依存します。私にはそれについての手がかりがありません。

于 2013-02-27T09:43:18.007 に答える
0
import numpy as np

def function_1(X):
    return np.sin(X) 

def function_2(X):
    return 3. * np.sin(X) 

def function_3(X):
    return np.sin(X + 1.) 

X = np.arange(100)

# mean
print function_1(X).mean()

# std dev
print function_1(X).std()

# to plot
from matplotlib import pyplot as mp
mp.plot(X, function_1(X))
mp.hlines(function_1(X).mean(), 0, 100)
mp.show()

など...しかし、本当に正弦関数の「平均」をプロットする必要がありますか?考えてみて...

于 2013-02-27T09:37:59.473 に答える