datos <-function(ni, se, sp){ # ni=tamaño de muestra, se= sensitivity, sp= specificity
rmultinom(n=1, size=ni, prob=c(se,1-se,1-sp,sp))
}
datos(100,0.7,0.8)
## [,1]
## [1,] 35
## [2,] 15
## [3,] 13
## [4,] 37
En este caso la función datos_subp recibe vectores con \(ni=\) tamaño total para cada subpoblación, \(se=\) sensibilidad para cada subpoblación y \(sp=\) especificidad para cada subpoblación. Como resultado se obtiene un vector donde cada 4 filas corresponde a los datos simulados de una tabla 2, que corresponde una subpoblacion diferente.
datos_subp <-function( ni, se, sp){ # ni= num de obs totales por tabla, se= sensitivity, sp= specificity
tablas <- data.frame()
for (i in 1:length(ni)) {
tabla <-rmultinom(n=1, size=ni[i], prob=c(se[i],1-se[i],1-sp[i],sp[i]))
tabla <- data.frame(tabla)
tablas <- rbind(tablas,tabla) #Pegarlo en filas
}
#tablas <- tablas[,1] # para que se muestre en forma de vector
tablas
}
#datos_subp(c(rep(100,6)),c(rep(0.7,6)),c(rep(0.8,6)))
datos_subp(c(20,30),c(0.7,0.7), c(0.8,0.8))
## tabla
## 1 4
## 2 4
## 3 3
## 4 9
## 5 10
## 6 2
## 7 2
## 8 16