Ich möchte mehrere Zufallszahlen, die aus der Normalverteilung, für mehrere Paare von Mittelwert und Standardabweichung gesammelt werden. Diese Paare in einem data frame
gespeichert sind, mit drei Spalten die identifiant des Paares, Wert der Mittelwert und die Standardabweichung, wie in dem folgenden Beispiel enthalten:R, Erstellen von mehreren Zufallszahlen aus jeder Zeile Datenreihe
ex <- data.frame("id" = c("id_1_0.1", "id_2_0.5"), "mean" = c(1, 2), "sd" = c(0.1, 0.5))
um für jedes Paar 10 Zufallszahlen zu erzeugen, verwendete ich diese zwei Linien:
tmp <- by(cbind(ex$mean, ex$sd), ex$id, function(x) rnorm(10, mean = x[, 1], sd = x[, 2]))
tmp <- do.call(rbind, lapply(tmp, data.frame, stringsAsFactors = FALSE))
Was würde ich tun möchte, ist, dann beide Daten zusammenführen Rahmen ex
und tmp
alle Daten in einem Datenrahmen zu haben. Mit dieser Methode habe ich ein Problem der Namensgebung aufgrund der Inkrementierung, so dass ich keine einfache Zusammenführung machen kann.
Sollte ich versuchen, dies mit einer regex
Formel zu lösen oder gibt es eine einfachere Lösung?
Sorry für die falsche variable Referenz in meiner Antwort, hatte die temporäre Variable 'a' noch in meiner globalen Umgebung. – Florian