All 3 LDpred2 functions now use an SFBM as input format for the correlation matrix.
Allow for multiple initial values for p in snp_ldpred2_auto()
.
Add function coef_to_liab()
to e.g. convert heritability to the liability scale.
alpha
of function snp_cor()
to 1
.Add functions snp_ldpred2_inf()
, snp_ldpred2_grid()
and snp_ldpred2_auto()
for running the new LDpred2-inf, LDpred2-grid and LDpred2-auto.
Add functions snp_ldsc()
and snp_ldsc2()
for performing LD score regression.
Add function snp_asGeneticPos()
for transforming physical positions to genetic positions.
Add function snp_simuPheno()
for simulating phenotypes.
snp_pcadapt()
, bed_pcadapt()
, snp_readBGEN()
and snp_fastImputeSimple()
.Parallelization of clumping algorithms has been modified. Before, chromosomes were imputed in parallel. Now, chromosomes are processed sequentially, but computations within each chromosome are performed in parallel thanks to OpenMP. This should prevent major slowdowns for very large samples sizes (due to swapping).
Use OpenMP to parallelize other functions as well (possibly only sequential until now).
Can now run snp_cor()
in parallel.
Parallelization of snp_fastImpute()
has been modified. Before this version, chromosomes were imputed in parallel. Now, chromosomes are processed sequentially, but computation of correlation between variants and XGBoost models are performed using parallelization.
snp_subset()
as alias of method subset()
to subset bigSNP
objects.bed_light
internally to make parallel algorithms faster because they have to transfer less data to clusters. Also define differently functions used in big_parallelize()
for the same reason.object 'obj.bed' not found
in snp_readBed2()
.backingfile
to subset.bigSNP()
.byrow
to bed_counts()
.Add memory-mapping on PLINK (.bed) files with missing values + new functions:
bed()
bed_MAF()
bed_autoSVD()
bed_clumping()
bed_counts()
bed_cprodVec()
bed_pcadapt()
bed_prodVec()
bed_projectPCA()
bed_projectSelfPCA()
bed_randomSVD()
bed_scaleBinom()
bed_tcrossprodSelf()
download_1000G()
snp_modifyBuild()
snp_plinkKINGQC()
snp_readBed2()
sub_bed()
Add 3 parameters to autoSVD()
: alpha.tukey
, min.mac
and max.iter
.
Remove option for changing ploidy (that was only partially supported).
Automatically apply snp_gc()
to pcadapt
.
snp_fastImputeSimple()
: fast imputation via mode, mean or sampling according to allele frequencies.snp_readBGEN()
that could not handle duplicated variants or individuals.snp_grid_PRS()
, it now stores not only the FBM, but also the input parameters as attributes (the whole result basically).Add 3 SCT functions snp_grid_*()
to improve from Clumping and Thresholding (preprint coming soon).
Add snp_match()
function to match between summary statistics and some SNP information.
is.size.in.bp
is deprecated.read_as
for snp_readBGEN()
. It is now possible to sample BGEN probabilities as random hard calls using read_as = "random"
. Default remains reading probabilities as dosages.For memory-mapping, now use mio instead of boost.
snp_clumping()
(and snp_autoSVD()
) now has a size
that is inversely proportional to thr.r2
.
snp_pruning()
is deprecated (and will be removed someday); now always use snp_clumping()
.
snp_assocBGEN()
for computing quick association tests from BGEN files. Could be useful for quick screening of useful SNPs to read in bigSNP format. This function might be improved in the future.snp_readBGEN()
to read UK Biobank BGEN files in bigSNP
format.Add parameter is.size.in.bp
to snp_autoSVD()
for the clumping part.
Change the threshold of outlier detection in snp_autoSVD()
(it now detects less outliers). See the documentation details if you don’t have any information about SNPs.
snp_gene
(as a gist) to get genes corresponding to ‘rs’ SNP IDs thanks to package {rsnps} from rOpenSci. See README.snp_fastImpute
. Also store information in an FBM (instead of a data frame) so that imputation can be done by parts (you can stop the imputation by killing the R processes and come back to it later). Note that the defaults used in the Bioinformatics paper were alpha = 0.02
and size = 500
(instead of 1e-4
and 200
now, respectively). These new defaults are more stringent on the SNPs that are used, which makes the imputation faster (30 min instead of 42-48 min), without impacting accuracy (still 4.7-4.8% of errors).