Last updated: 2018-12-14
workflowr checks: (Click a bullet for more information) ✔ R Markdown file: up-to-date
Great! Since the R Markdown file has been committed to the Git repository, you know the exact version of the code that produced these results.
✔ Environment: empty
Great job! The global environment was empty. Objects defined in the global environment can affect the analysis in your R Markdown file in unknown ways. For reproduciblity it’s best to always run the code in an empty environment.
✔ Seed:
set.seed(12345)
The command set.seed(12345)
was run prior to running the code in the R Markdown file. Setting a seed ensures that any results that rely on randomness, e.g. subsampling or permutations, are reproducible.
✔ Session information: recorded
Great job! Recording the operating system, R version, and package versions is critical for reproducibility.
✔ Repository version: 73ed3b7
wflow_publish
or wflow_git_commit
). workflowr only checks the R Markdown file, but you know if there are other scripts or data files that it depends on. Below is the status of the Git repository when the results were generated:
Ignored files:
Ignored: .DS_Store
Ignored: .Rhistory
Ignored: .Rproj.user/
Ignored: analysis/.DS_Store
Ignored: analysis/BH_robustness_cache/
Ignored: analysis/FDR_Null_cache/
Ignored: analysis/FDR_null_betahat_cache/
Ignored: analysis/Rmosek_cache/
Ignored: analysis/StepDown_cache/
Ignored: analysis/alternative2_cache/
Ignored: analysis/alternative_cache/
Ignored: analysis/ash_gd_cache/
Ignored: analysis/average_cor_gtex_2_cache/
Ignored: analysis/average_cor_gtex_cache/
Ignored: analysis/brca_cache/
Ignored: analysis/cash_deconv_cache/
Ignored: analysis/cash_fdr_1_cache/
Ignored: analysis/cash_fdr_2_cache/
Ignored: analysis/cash_fdr_3_cache/
Ignored: analysis/cash_fdr_4_cache/
Ignored: analysis/cash_fdr_5_cache/
Ignored: analysis/cash_fdr_6_cache/
Ignored: analysis/cash_paper_fig1_cache/
Ignored: analysis/cash_paper_fig_avgecdf_cache/
Ignored: analysis/cash_paper_fig_deconv_cache/
Ignored: analysis/cash_paper_fig_leukemia_cache/
Ignored: analysis/cash_plots_2_cache/
Ignored: analysis/cash_plots_3_cache/
Ignored: analysis/cash_plots_4_cache/
Ignored: analysis/cash_plots_5_cache/
Ignored: analysis/cash_plots_cache/
Ignored: analysis/cash_sim_1_cache/
Ignored: analysis/cash_sim_2_cache/
Ignored: analysis/cash_sim_3_cache/
Ignored: analysis/cash_sim_4_cache/
Ignored: analysis/cash_sim_5_cache/
Ignored: analysis/cash_sim_6_cache/
Ignored: analysis/cash_sim_7_cache/
Ignored: analysis/correlated_z_2_cache/
Ignored: analysis/correlated_z_3_cache/
Ignored: analysis/correlated_z_cache/
Ignored: analysis/create_null_cache/
Ignored: analysis/cutoff_null_cache/
Ignored: analysis/design_matrix_2_cache/
Ignored: analysis/design_matrix_cache/
Ignored: analysis/diagnostic_ash_cache/
Ignored: analysis/diagnostic_correlated_z_2_cache/
Ignored: analysis/diagnostic_correlated_z_3_cache/
Ignored: analysis/diagnostic_correlated_z_cache/
Ignored: analysis/diagnostic_plot_2_cache/
Ignored: analysis/diagnostic_plot_cache/
Ignored: analysis/efron_leukemia_cache/
Ignored: analysis/fitting_normal_cache/
Ignored: analysis/gaussian_derivatives_2_cache/
Ignored: analysis/gaussian_derivatives_3_cache/
Ignored: analysis/gaussian_derivatives_4_cache/
Ignored: analysis/gaussian_derivatives_5_cache/
Ignored: analysis/gaussian_derivatives_cache/
Ignored: analysis/gd-ash_cache/
Ignored: analysis/gd_delta_cache/
Ignored: analysis/gd_lik_2_cache/
Ignored: analysis/gd_lik_cache/
Ignored: analysis/gd_w_cache/
Ignored: analysis/knockoff_10_cache/
Ignored: analysis/knockoff_2_cache/
Ignored: analysis/knockoff_3_cache/
Ignored: analysis/knockoff_4_cache/
Ignored: analysis/knockoff_5_cache/
Ignored: analysis/knockoff_6_cache/
Ignored: analysis/knockoff_7_cache/
Ignored: analysis/knockoff_8_cache/
Ignored: analysis/knockoff_9_cache/
Ignored: analysis/knockoff_cache/
Ignored: analysis/knockoff_var_cache/
Ignored: analysis/marginal_z_alternative_cache/
Ignored: analysis/marginal_z_cache/
Ignored: analysis/mosek_reg_2_cache/
Ignored: analysis/mosek_reg_4_cache/
Ignored: analysis/mosek_reg_5_cache/
Ignored: analysis/mosek_reg_6_cache/
Ignored: analysis/mosek_reg_cache/
Ignored: analysis/pihat0_null_cache/
Ignored: analysis/plot_diagnostic_cache/
Ignored: analysis/poster_obayes17_cache/
Ignored: analysis/real_data_simulation_2_cache/
Ignored: analysis/real_data_simulation_3_cache/
Ignored: analysis/real_data_simulation_4_cache/
Ignored: analysis/real_data_simulation_5_cache/
Ignored: analysis/real_data_simulation_cache/
Ignored: analysis/rmosek_primal_dual_2_cache/
Ignored: analysis/rmosek_primal_dual_cache/
Ignored: analysis/seqgendiff_cache/
Ignored: analysis/simulated_correlated_null_2_cache/
Ignored: analysis/simulated_correlated_null_3_cache/
Ignored: analysis/simulated_correlated_null_cache/
Ignored: analysis/simulation_real_se_2_cache/
Ignored: analysis/simulation_real_se_cache/
Ignored: analysis/smemo_2_cache/
Ignored: data/LSI/
Ignored: docs/.DS_Store
Ignored: docs/figure/.DS_Store
Ignored: output/fig/
Ignored: output/paper/
Unstaged changes:
Modified: analysis/cash_plots_2.rmd
Note that any generated files, e.g. HTML, png, CSS, etc., are not included in this status report because it is ok for generated content to have uncommitted changes.
z.sel <- readRDS("../output/paper/simulation/z.sel.rds")
z <- z.sel[3, ]
p <- pnorm(-abs(z)) * 2
# setEPS()
# postscript("../output/paper/hist_z.eps", width = 5, height = 5)
pdf("../output/paper/hist_z.pdf", width = 6.5, height = 5)
par(mar = c(4.5, 4.5, 2.5, 1))
hist(z, breaks = seq(-10, 10, by = 0.1), prob = TRUE, ylim = c(0, dnorm(0)), xlab = "z-score", xlim = range(c(abs(z), -abs(z))), main = expression("(a): Histogram of correlated z-scores"), cex.main = 2, cex.lab = 2)
x.plot = seq(- max(abs(z.sel)) - 2, max(abs(z.sel)) + 2, length = 1000)
lines(x.plot, dnorm(x.plot), col = "blue", lwd = 3)
legend("topright", expression('N(0,1)'), lty = 1, col = 'blue', lwd = 3, cex = 1.75, bty = 'n', seg.len = 1.5, x.intersp = 0.5)
dev.off()
quartz_off_screen
2
# setEPS()
# postscript("../output/paper/pval_z.eps", width = 5, height = 5)
pdf("../output/paper/pval_z.pdf", width = 6.5, height = 5)
par(mar = c(4.5, 4.5, 2.5, 1))
hist(p, prob = TRUE, breaks = seq(0, 1, by = 0.01), xlab = "p-value", main = expression("(b): Histogram of correlated p-values"), cex.main = 2, cex.lab = 2)
segments(x0 = 0, x1 = 1, y0 = 1, y1 = 1, col = "blue", lwd = 3)
legend("topright", expression('Uniform[0,1]'), lty = 1, col = 'blue', lwd = 3, cex = 1.75, bty = 'n', seg.len = 1.5, x.intersp = 0.5)
dev.off()
quartz_off_screen
2
thresh.color <- c("maroon", "purple", "orange")
#thresh.color <- scales::hue_pal()(10)[5 : 7]
set.seed(5)
p.norm.1 <- pnorm(-abs(rnorm(1e4))) * 2
set.seed(25)
p.norm.1.6 <- pnorm(-abs(rnorm(1e4, 0, 1.6))) * 2
y.max <- -log(min(p.norm.1, p, p.norm.1.6))
y.max <- 20
# setEPS()
# postscript("../output/paper/ecdf_z.eps", width = 5, height = 5)
pdf("../output/paper/ecdf_z.pdf", width = 5, height = 5)
par(mar = c(4.5, 4.5, 2.5, 1))
plot(ecdf(z), xlab = "z-score", ylab = "CDF", lwd = 2, main = expression("(c): Empirical CDF"), cex.main = 2, cex.lab = 2, xlim = c(-max(abs(z)), max(abs(z))))
lines(seq(-6, 6, by = 0.01), pnorm(seq(-6, 6, by = 0.01)), col = "blue", lwd = 3, lty = 2)
lines(seq(-6, 6, by = 0.01), pnorm(seq(-6, 6, by = 0.01), 0, 1.6), col = "green", lwd = 3, lty = 4)
rect(xleft = c(-5, 2.5),
xright = c(-2.5, 5),
ytop = c(0.05, 1),
ybottom = c(0, 0.95), border = "red", lty = c(1, 5))
legend("topleft", c("Correlated z-scores", expression(N(0,1)), expression(N(0, 1.6^2))), lty = c(1, 2, 4), col = c("black", "blue", "green"), lwd = 3, cex = 1.25, bty = 'n', seg.len = 1.5, x.intersp = 0.5)
dev.off()
quartz_off_screen
2
# setEPS()
# postscript("../output/paper/ecdf_z_left.eps", width = 5, height = 5)
pdf("../output/paper/ecdf_z_left.pdf", width = 5, height = 5)
par(mar = c(4.5, 4.5, 2.5, 1))
plot(ecdf(z), xlab = "z-score", ylab = "CDF", main = expression("(d): Left Tail of CDF"), lwd = 3, xlim = c(-5, -2.5), ylim = c(0, 0.05), cex.main = 2, cex.lab = 2, bty = "n")
box(col = "red")
lines(seq(-6, 6, by = 0.01), pnorm(seq(-6, 6, by = 0.01)), col = "blue", lwd = 3, lty = 2)
lines(seq(-6, 6, by = 0.01), pnorm(seq(-6, 6, by = 0.01), 0, 1.6), col = "green", lwd = 3, lty = 4)
legend("topleft", c("Correlated z-scores", expression(N(0,1)), expression(N(0, 1.6^2))), lty = c(1, 2, 4), col = c("black", "blue", "green"), lwd = 3, cex = 1.25, bty = 'n', seg.len = 1.5, x.intersp = 0.5)
dev.off()
quartz_off_screen
2
# setEPS()
# postscript("../output/paper/ecdf_z_right.eps", width = 5, height = 5)
pdf("../output/paper/ecdf_z_right.pdf", width = 5, height = 5)
par(mar = c(4.5, 4.5, 2.5, 1))
plot(ecdf(z), xlab = "z-score", ylab = "CDF", main = expression("(e): Right Tail of CDF"), lwd = 3, xlim = c(2.5, 5), ylim = c(0.95, 1), cex.main = 2, cex.lab = 2, bty = "n")
box(col = "red", lty = 5)
lines(seq(-6, 6, by = 0.01), pnorm(seq(-6, 6, by = 0.01)), col = "blue", lwd = 3, lty = 2)
lines(seq(-6, 6, by = 0.01), pnorm(seq(-6, 6, by = 0.01), 0, 1.6), col = "green", lwd = 3, lty = 4)
legend("bottomright", c("Correlated z-scores", expression(N(0,1)), expression(N(0, 1.6^2))), lty = c(1, 2, 4), col = c("black", "blue", "green"), lwd = 3, cex = 1.25, bty = 'n', seg.len = 1.5, x.intersp = 0.5)
dev.off()
quartz_off_screen
2
# setEPS()
# postscript("../output/paper/pval_log_z.eps", width = 5, height = 5)
pdf("../output/paper/pval_log_z.pdf", width = 5, height = 5)
par(mar = c(4.5, 4.5, 2.5, 1))
plot(sample(-log(p)), ylim = c(0, y.max), ylab = "-log(p-value)", main = expression('(f): Correlated z-scores'), cex.main = 2, cex.lab = 2, pch = 19)
abline(h = -log(c(
0.005,
pnorm(-sqrt(2 * log(1e4))) * 2,
0.05 / 1e4
)), lwd = 3, col = thresh.color, lty = c(1, 2, 4))
dev.off()
quartz_off_screen
2
# setEPS()
# postscript("../output/paper/pval_log_N01.eps", width = 5, height = 5)
pdf("../output/paper/pval_log_N01.pdf", width = 5, height = 5)
par(mar = c(4.5, 4.5, 2.5, 1))
plot(-log(p.norm.1), ylim = c(0, y.max), ylab = "-log(p-value)", main = expression("(g): iid N(0,1) z-scores"), col = "blue", cex.main = 2, cex.lab = 2, pch = 19)
abline(h = -log(c(
0.005,
pnorm(-sqrt(2 * log(1e4))) * 2,
0.05 / 1e4
)), lwd = 3, col = thresh.color, lty = c(1, 2, 4))
legend("top",
legend = c(
latex2exp::TeX('p-value$= 0.05 / 10^4$'),
'Univsal Threshold',
latex2exp::TeX('p-value$= 0.005')
), lty = c(4, 2, 1), lwd = 3, xpd = NA,
col = thresh.color[3 : 1], ncol = 1, bty = 'n', cex = 1.25)
dev.off()
quartz_off_screen
2
# setEPS()
# postscript("../output/paper/pval_log_N01.6.eps", width = 5, height = 5)
pdf("../output/paper/pval_log_N016.pdf", width = 5, height = 5)
par(mar = c(4.5, 4.5, 2.5, 1))
plot(-log(p.norm.1.6), ylim = c(0, y.max), ylab = "-log(p-value)", main = expression(paste("(h): iid ", N(0, 1.6^2), " z-scores")), col = "green", cex.main = 2, cex.lab = 2, pch = 19)
abline(h = -log(c(
0.005,
pnorm(-sqrt(2 * log(1e4))) * 2,
0.05 / 1e4
)), lwd = 3, col = thresh.color, lty = c(1, 2, 4))
# legend("topright", inset = c(-0.52, 0.3),
# legend = c(
# latex2exp::TeX('$p = 0.05 / 10^4$'),
# 'Univ Thresh',
# "p = 0.005"
# ), lty = c(4, 2, 1), lwd = 3, xpd = NA,
# col = thresh.color[3 : 1], ncol = 1, cex = 1.5, bty = "n", x.intersp = 0.5, seg.len = 1.5)
dev.off()
quartz_off_screen
2
sessionInfo()
R version 3.4.3 (2017-11-30)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS 10.14.1
Matrix products: default
BLAS: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRblas.0.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRlapack.dylib
locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
attached base packages:
[1] stats graphics grDevices utils datasets methods base
loaded via a namespace (and not attached):
[1] workflowr_1.1.1 Rcpp_0.12.16 digest_0.6.15
[4] rprojroot_1.3-2 R.methodsS3_1.7.1 backports_1.1.2
[7] git2r_0.23.0 magrittr_1.5 evaluate_0.10.1
[10] stringi_1.2.2 whisker_0.3-2 R.oo_1.22.0
[13] R.utils_2.6.0 latex2exp_0.4.0 rmarkdown_1.9
[16] tools_3.4.3 stringr_1.3.1 yaml_2.1.19
[19] compiler_3.4.3 htmltools_0.3.6 knitr_1.20
This reproducible R Markdown analysis was created with workflowr 1.1.1