CDU-data-science-team / nottshcMethods

An internal R package formalising common transformations, visualisations, and analyses of clinical data
https://cdu-data-science-team.github.io/nottshcMethods/
Other
4 stars 3 forks source link

Add a helper function to make synthetic data #4

Closed ChrisBeeley closed 3 years ago

ChrisBeeley commented 3 years ago

I'm probably just going to go ahead and add this but posting here in case anyone has comments before I do. I made a helper function that's useful for making fake data, probably easier to read the code and output than have me explain it:

sample_vector <- function(values, weights, length){

  sample(values, length, replace = TRUE, prob = weights / sum(weights))
}

sample_vector(values = c(NA, "Male", "Female", "Other"),
          weights = c(10, 50, 50, 2),
          length = 100)
#>   [1] "Other"  NA       "Female" "Female" "Female" "Female" "Female" "Female"
#>   [9] "Female" "Other"  "Other"  "Female" "Female" "Female" "Female" "Female"
#>  [17] "Male"   "Female" "Male"   "Female" "Female" "Female" "Male"   "Male"  
#>  [25] "Male"   "Male"   "Male"   NA       "Male"   "Male"   "Female" "Female"
#>  [33] "Male"   "Male"   "Male"   "Male"   "Female" "Female" "Male"   "Male"  
#>  [41] "Female" NA       NA       "Male"   "Female" "Female" "Female" "Male"  
#>  [49] "Male"   "Male"   "Female" "Female" NA       "Male"   "Male"   "Male"  
#>  [57] "Male"   "Female" "Female" "Female" NA       "Male"   "Female" "Female"
#>  [65] "Male"   "Male"   NA       "Other"  "Male"   "Male"   NA       "Male"  
#>  [73] "Female" "Female" "Female" "Other"  NA       "Male"   "Male"   "Male"  
#>  [81] "Male"   NA       "Female" "Male"   "Female" "Male"   "Female" "Female"
#>  [89] "Male"   "Female" NA       "Female" NA       "Female" "Male"   "Male"  
#>  [97] "Female" "Female" "Female" "Male"

Created on 2021-04-22 by the reprex package (v0.3.0)

ChrisBeeley commented 3 years ago

Closed by #7