Nothing
################################################################################
context("LDSC")
################################################################################
test_that("wlm() works", {
x <- rnorm(100)
y <- rnorm(100)
w <- runif(100)
my_wlm <- stats::lm.wfit(cbind(1, x), y, w)
my_wlm2 <- wlm(x, y, w)
expect_equal(my_wlm2$intercept, my_wlm$coefficients[1], check.attributes = FALSE)
expect_equal(my_wlm2$slope, my_wlm$coefficients[2], check.attributes = FALSE)
expect_equal(my_wlm2$pred, my_wlm$fitted.values)
my_wlm <- stats::lm.wfit(as.matrix(x), y, w)
my_wlm2 <- wlm_no_int(x, y, w)
expect_equal(my_wlm2$slope, my_wlm$coefficients, check.attributes = FALSE)
expect_equal(my_wlm2$pred, my_wlm$fitted.values)
})
################################################################################
test_that("snp_ldsc() gives the same result as bulik/ldsc", {
skip_if(is_cran)
skip_on_covr()
skip_if_offline("dropbox.com")
input <- readRDS(url(
"https://www.dropbox.com/s/fhebnl9dn9poevp/sumstats-ldsc.rds?raw=1"))
input$ncores <- 2
ldsc <- do.call(bigsnpr::snp_ldsc, args = input)
# 0.772006989 0.008230577 0.140788052 0.006605016
expect_equal(ldsc, c(0.772, 0.0082, 0.1408, 0.0066),
check.attributes = FALSE, tolerance = 4e-5)
input$intercept <- 1
ldsc_no_int <- do.call(bigsnpr::snp_ldsc, args = input)
# 1.000000000 0.000000000 0.039032349 0.004779769
expect_equal(ldsc_no_int[1:3], c(1, 0, 0.039),
check.attributes = FALSE, tolerance = 4e-5)
expect_equal(ldsc_no_int[[4]], 0.0057, tolerance = 1e-3)
# not really the same -> due to the fast block jackknives they use?
input$intercept <- NULL
input$chi2_thr1 <- 10
ldsc_max_chi2 <- do.call(bigsnpr::snp_ldsc, args = input)
# 0.777194084 0.006735827 0.138050831 0.006193521
expect_equal(ldsc_max_chi2, c(0.7772, 0.0069, 0.1381, 0.0061),
check.attributes = FALSE, tolerance = 2e-4)
input$intercept <- 1
input$chi2_thr1 <- 30
input$blocks <- sort(sample(1:201, size = length(input$ld_score),
replace = TRUE, prob = runif(201, 1, 3)))
ldsc_blocks <- do.call(bigsnpr::snp_ldsc, args = input)
expect_equal(ldsc_blocks, ldsc_no_int, tolerance = 1e-2)
})
################################################################################
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.