library(tidyverse)
context("test-sim_individual_data")
# Load packaged fake phewas results dataframe with 1,578 phecodes
data("fake_phewas_results")
simulated_data_10 <- meToolkit::sim_individual_data(fake_phewas_results, 10, 0.15)
simulated_data_100 <- meToolkit::sim_individual_data(fake_phewas_results, 100, 0.15)
simulated_data_50_codes <- meToolkit::sim_individual_data(fake_phewas_results %>% head(50), 10, 0.15)
simulated_data_high_snp <- meToolkit::sim_individual_data(fake_phewas_results, 100, 0.95)
simulated_data_low_snp <- meToolkit::sim_individual_data(fake_phewas_results, 100, 0.05)
test_that("Returned phenotype dataframe is the correct size", {
expect_equal(
simulated_data_10$phenotypes %>% dim(),
c(10, 1578+1)
)
expect_equal(
simulated_data_100$phenotypes %>% dim(),
c(100, 1578+1)
)
expect_equal(
simulated_data_50_codes$phenotypes %>% dim(),
c(10, 50+1)
)
})
test_that("Returned individual-snp data is right dimensions", {
expect_equal(
simulated_data_10$snp_status %>% dim(),
c(10, 2)
)
expect_equal(
simulated_data_100$snp_status %>% dim(),
c(100, 2)
)
})
test_that("Observed snp frequencies are reasonable", {
expect_equal(
mean(simulated_data_100$snp_status$snp), 0.15, tolerance = 0.1
)
expect_equal(
mean(simulated_data_high_snp$snp_status$snp), 0.95, tolerance = 0.1
)
expect_equal(
mean(simulated_data_low_snp$snp_status$snp), 0.05, tolerance = 0.1
)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.