YinLiLin / hibayes

:swimmer: Individual-Level, Summary-Level and Single-Step Bayesian Regression Models for Genomic Prediction and Genome-Wide Association Studies
GNU General Public License v3.0
48 stars 7 forks source link

Constructing LD variance-covariance matrix #9

Open ckhunsr1 opened 3 years ago

ckhunsr1 commented 3 years ago

Hi,

I am trying to use a summary-level Bayes model (i.e. creating a PRS model using GWAS sumstat and 1000Genome reference panel with HAPMAP3 snplist). So far, I created an LD variance-covariance matrix with this command: ldm4 = ldmat(geno, map, ldchr=FALSE, chisq=5, threads=4); however, the final model seems to be unstable.

I tried to create an LD variance-covariance matrix with this command instead: ldm3 = ldmat(geno, map, ldchr=FALSE, threads=4). The problem is this step requires a very large memory even when I only limited the snplist to HAPMAP3 variants (jobs always got killed because of not enough memory). Would you please advise on how to solve this problem?

Thank you!

YinLiLin commented 3 years ago

Hi,

Thank you for trying hibayes. SBayes model uses sparse LD matrix for most cases to reduce the memory cost, which results in a biased estimation of each SNP effect in MCMC procedure, so you may get unstable results, the predictive performance would increase if you compute a higher dense LD matrix, but the memory requirements would be a big challenge when there are millions SNPs, especially for R language, as it forces all the matrix into double precision. There is another software named GCTB (written in C++, LD matrix is stored into float precision) developed by Jian Zeng, I suggest to try it on your data.

Best, LL