2016-05-16 27 views
0

I haben die folgende MatrixHinzufügen Extremwert verteiltes Rauschen (mit μ = 0, σ = 10) auf einen Vektor von Zahlen in R

Measurement Treatment 
38 A 
14 A 
54 A 
69 A 
20 B 
36 B 
35 B 
10 B 
11 C 
98 C 
88 C 
14 C 

I Extremwert verteiltem Rauschen hinzufügen möchten (mit einem Mittelwert = 0 und sd = 10) zu den Messwerten. Wie kann ich das in R erreichen?

Ich fand revd in extRemes Paket, aber es funktioniert nicht wie erwartet. Tut devd aus dem gleichen Paket tun, was ich tun möchte? (Aber es nicht erlaubt für mittlere und sd definiert werden)

Antwort

0

Wenn Sie Ihr Maß als Mittelwert für das Rauschen verwenden möchten, dann können Sie dies tun:

measure = round(runif(10,0,30),0) 
data = data.frame(measure) 
for(i in 1:nrow(data)){ 
    data$measure1[i] = rnorm(1,data$measure[i],10) 
} 
data 
    measure measure1 
1  6 6.281557 
2  12 -5.780177 
3  18 13.529773 
4  26 33.665584 
5  14 12.666614 
6  24 41.146132 
7  5 -1.850390 
8  14 16.728703 
9  13 26.082601 
10  13 14.066475 

EDIT: Sie können vermeiden die for-Schleife mit dieser stattdessen:

data$measure1 = data$measure + rnorm(1,0,10)