2017-09-23 3 views
0

私は、特定の行、おそらく2x + 2に続く100サンプルのデータセットを作成しようとしています。私はX軸の値を0〜1000の範囲にしたい。これを行うために、私は以下を使用します。numpyの配列にノイズを追加する

X = np.random.random(100,1) * 1000 
Y = (2*X) + 2 
data = np.hstack(X,Y) 

hstackは、対応するxとyの値を持つ配列を返します。その部分は機能する。しかし、データポイントを2x + 2ラインから遠ざけるためにノイズを注入したいのであれば、それはわかりません。

たとえば、Yアレイの標準偏差を20とします。y値にノイズを注入するにはどうすればよいですか?

答えて

1

多分私は何かが不足していますが、追加しようとしましたnumpy.random.normal(scale=20,size=100)Y

Y=numpy.random.normal(2*X+2,20) 

と書いてもかまいません(アレイサイズを繰り返さずに)。

+0

これは私が探していた正確な効果を持っているようです。とても有難い! – MPeal

1

ノイズをシミュレートするには、np.random.randnのような正規分布乱数ジェネレータを使用します。

は何をしようとするこのです:

X = np.linspace(0, 1000, 100) 
Y = (2*X) + 2 + 20*np.random.randn(100) 
data = np.hstack((X.reshape(100,1),Y.reshape(100,1))) 

enter image description here

関連する問題