У меня есть data.frame с именем datos со столбцами
names <- c("TIPO","CODIGO","CANTIDAD","AVG_INGRESO_TOTAL","STDEV_INGRESO_TOTAL")
Где Tipo и Codigo вместе являются первичными ключами.
Тогда "Cantidad" - это количество сэмплов, которое мне нужно для этого ПК, с AVG_INGRESO_TOTAL в качестве среднего значения и STDEV_INGRESO_TOTAL в качестве отклонения.
Мне нужен в результате data.frame со столбцами
c("TIPO","CODIGO","INGRESO")
где INGRESOS - это значение отсчетов, повторяемых "CANTIDAD" раз для каждого "TIPO", "CODIGO".
Я уже решил проблему следующим образом:
for (i in 1:nrow(datos)) {
d<-rnorm(datos$CANTIDAD[i],datos$AVG_INGRESO_TOTAL[i],datos$STDEV_INGRESO_TOTAL[i])
for (h in 1:datos$CANTIDAD[i]) {
vec <-data.frame(datos$TIPO[i],datos$CODIGO[i],d[h])
names(vec)<-c("TIPO","CODIGO","INGRESO")
distribucion <- rbind(distribucion,vec)
}
}
Но в результате получается неэффективный сценарий, который занимает более одного часа для суммирования ("CANTIDAD") = 1.000.0000.