2012-01-02 29 views
6

rnorm()の出力を時系列として扱うことで、ホワイトノイズが得られることがわかりました。どのようにピンクノイズをシミュレートするための任意の提案?ピンクノイズをシミュレートする方法

require(tuneR) 
w <- noise(kind = c("white")) 
p <- noise(kind = c("pink")) 
par(mfrow=c(2,1)) 
plot(w,main="white noise") 
plot(p,main="pink noise") 

EDIT:ノイズホワイト又はピンクのいずれかである波オブジェクトを生成することができるnoise機能を有するtuneR

答えて

8

パッケージIは、上記の方法は、ベクター(DOH)を生成しないことに気づきました。ベクトルに変換する残忍な方法は、以下のコードを追加することです:

writeWave(p,"p.wav")#writes pink noise on your hard drive 
require(audio)#loads `audio` package to use `load.wave` function 
p.vec <- load.wave("path/to/p.wav")#this will load pink noise as a vector 

enter image description here

+4

はベクトルを作るのに十分なleft' 'のp @はありませんか? (私はCRANの失敗のためにチェックできません) – mbq

+0

はい@mbq 'p @ left'はうまく動作します!素晴らしいヒント。 –

+0

興味のないところでは、一般化された「カラー」ノイズ関数、すなわち帯域幅の任意の領域をどのように抑制するのでしょうか?これは楽しいニューイヤーのプロジェクトかもしれませんね:-) –

関連する問題