- Fixed minor native routine registration issue.
- Drop defunct CI services.
- Update link to paper.
- Add
FWD()function for performing forward regressions.
- Add
segments()function for finding non-overlapping segments based on a summary statistic. preprocess(): AddnCoresparameter.findRelated(): Map indices to sample names for matrix inputs.getG(): Addimputeparameter.getG(): Impute by mean instead of 0 ifcenter = FALSE.getG(): Usepreprocess()internally for better performance.as.BGData(): Read genetic distances in .bim file as double instead of integer.
- Follow Bioconductor S4 practices.
- If you have used
new()to createBGDatainstances, please use theBGData()constructor function instead. - If you have used
@to access the slots ofBGDatainstances, please use thegeno(),pheno(), andmap()accessors instead.
- If you have used
BGData():- Do not create dimnames for
genoas this object is likely shared. - Check if
genohas row names before creatingphenostub. - Check if
genohas column names before creatingmapstub. - Rename
IIDinphenostub tosample_id. - Rename
mrkinmapstub tovariant_id. - Change format of rownames for
phenostub to a sequence starting withsample_and rownames formapstub to a sequence starting withvariant_ifgenodoes not have dimnames.
- Do not create dimnames for
as.BGData():- Force column classes when loading .fam and .bim files.
- Force
FIDandIIDcolumns to be of typecharacterwhen loading alternate phenotype files. - Do not make assumptions about the structure of dimnames of a BEDMatrix
object if it is passed without .fam and .bim file unless they are
NULL.
- Add validity tests for
BGDataobjects:- Check if number of rows of
genomatches number of rows ofpheno. - Check if number of columns of
genomatches number of rows ofmap. - Warn if the row names of
phenodo not match the row names ofgeno. - Warn if the row names of
mapdo not match the column names ofgeno.
- Check if number of rows of
- Add
preprocess()function for fast centering, scaling, and imputation. GWAS(): Return number of records used for each variant and allele frequencies inrayOLS.- Update citation instructions.
- Use
inherits(., *)instead ofclass(.) == *(R4 compat).
- Add
chunkedMap()function. - Improve error handling in
chunkedMap()andchunkedApply(). summarize(): Improve performance.GWAS(): Improve performance ofrayOLSmethod.GWAS(): Fix bug when computing p-values for methods other than rayOLS, lsfit, or SKAT wheniis used to subset samples.GWAS(): Fix wrong results inlsfitmethod when covariates with missing values are used.as.BGData(): Fix bug loading .fam and .bim files when path contains the wordbed.
- Rename
bufferSizetochunkSize. - Remove
nTasksparameter fromchunkedApply()and methods based on it. - Remove
crossprodsfunction.
- Change chunking strategy to improve parallelism: instead of loading a subset
of
chunkSizein the main process, load a subset ofchunkSizein the each fork. That waynTasksis not necessary anymore and the same code can be used for one core and multiple cores. - Add
findRelated()function for use with matrices and symDMatrix objects. - Add
orderedMerge()function that allows for phenotypes to be easily merged into a BGData object. - Performance improvements in
getG()function: use single shared memory matrix to collect results. - Performance improvements in
rayOLSmethod inGWAS()function. getG_symDMatrix(): Support version 2 of symDMatrix package.getG_symDMatrix(): AddchunkSizeparameter.getG_symDMatrix(): AddminVarparameter.as.BGData(): Use rownames of BEDMatrix object as rownames for pheno, and colnames of BEDMatrix object as rownames for map.- Include process ID in verbose output if
nCores> 1.
getG_symDMatrix(): Fix scaling error whenscale = FALSE.getG_symDMatrix(): Compute block indices correctly for out-of-order, non-sequential indices.getG_symDMatrix(): Do not include centers and scales in attributes anymore because the influence ofjandminVaris difficult to retain.
Initial release.