Project
Changelog
What changed in each release of QDECR, newest first, from the NEWS file that ships with the package.
On this page
0.9.0 Lausanne
Version 0.9.0 is the first update after publication of the QDECR manuscript in Frontiers in Neuroinformatics. The latter is based in Lausanne, Switzerland. This version introduces weighted regression and a number of minor tweaks.
New features
- #47:
qdecr_fastlmcan now take weights via theweightsargument, which act as observation weights in the linear regression. This argument works similar tolm(addresses #36).
Bug fixes
- #43: The specified number of cores is checked against
bigstatsr::nb_cores(insideQDECR:::check_cores). However, it seems that it returns 0 cores when only 1 core is found (given that it always omits 1 core). We thus rewrotecheck_coresto useparallel::detectCores, and to make sure that it cannot return 0 cores (fixes #42). - #43: Fixed the text in the error message of
QDECR:::check_cores. - #45: Unsmoothed q-cached surface files can now be analyzed. Normally, QDECR would look for files containing
fwhmX, where X is the FWHM in mm. However, unsmoothed files do not contain this part. The code was rewritten to check if fwhm == 0, and in those cases it will not insert that into the file names. This was fixed by settingfwhmcto “” inQDECR:::qdecr_check, and by tweakingQDECR:::qdecr_prep_mgh(fixes #41). - #51: Added an extra check to avoid multiple levels of parallelism, e.g.
n_cores> 1 while simultaneously having a parallel BLAS library set up. - 40f04d4: Added some functions to the NAMESPACE (stats::na.fail, stats::model.weights).
- 8f19d58: Since 4.0.0 it is possible to get a warning message from
readChar. Theload.annotfunction was modified by replacingreadCharwith the equivalent call ofreadBin.
Minor tweaks
- #46: Tweaked the vertex-wise analysis code (
QDECR:::analysis_chunkedlm) to be faster and be more memory efficient (seis now calculated without the intermediate storage ofs2) (addresses #38). - 306826c: Added an extra check in
QDECR:::qdecr_prep_mghso that it also checks whether the .mgh files actually exist. It will output which subjects are missing the surface files (if N < 20) or just say that people are missing surface files (if N >= 20). This adds a little bit of runtime, but it pays off (fixes #34). - 26ac549: When there is missing data in the design matrix,
QDECR:::qdecr_fastlmwill throw an error (i.e.,na.action = na.fail). This is to avoid problems downstream. We opted forna.failand notna.omit-like behavior, because users who are unaware of missingness would then only find out after running QDECR that they had missingness.
0.8.5
Bug fixes
- cfc9a35: Fixed a line in
check_idto explicitly statedrop = TRUEinmd[, id, drop = TRUE]. - 39b6173: Fixed that a call to
model.matrixwould supplystats::contrastsinprep_fastlm; this led to harmless warnings.
Minor tweaks
- 5043753: To let users analyze custom surface maps, we added the
custom_measureargument toqdecr_fastlm. This argument lets users specify any name for a surface map that they want, provided that [1] it starts with “qdecr_” (e.g. “qdecr_test”), [2] such a file is located in the subj subdirectory of the FreeSurfer output directories, [3] the surface files follow the same naming convention as the other surface maps that FreeSurfer outputs (e.g. “lh.test.fwhm10.fsaverage.mgh”).
0.8.4
Bug fixes
- 20d3be2: Fixed that the model output files (p.mgh, t.mgh, etc) also contained the mcz threshold (e.g. cache.th30).
- 18c9de8: Lots of comments removed/modified, and code was cleaned up a bit.
- 015d8a1/e0aa3fe: Wrote in a preventative stop for when
dir_out_tree = FALSEandclobber = TRUEare combined. This can easily delete important directories unintentionally, as has happened to the authors.
Minor Tweaks
- e7adb17: Added the
file_out_treeargument, which controls whether output files also contain the full project name. By default, it is the inverse ofdir_out_tree. - 077e4fd: Fixed a lot of the documentation.
0.8.3
Minor tweaks
- f019f81: The
mcz_thrargument (forqdecrandqdecr_fastlm) now accepts: 13/1.3/0.05, 20/2.0/0.01, 23/2.3/0.005, 30/3.0/0.001, 33/3.3/0.0005, 40/4.0/0.0001. - f019f81: A new function
qdecr_mcz_thrmakes sure that the value is converted to 13/20/23/30/33/40.
0.8.2
Bug fixes
- 6638efb: The
fstpackage was noted as imported package, but we never implemented functionality from it. Thus, all reference to it was removed.
New (minor) tweaks
- 3d479f4: The version is now properly displayed when running
qdecr. This version is updated dynamically usingpackageVersion("QDECR"). The website (www.qdecr.com) was also added. - 95a4d90: Exported
load.annotand theqdecr_readfunctions. - fa3de94: Renamed the internal
runMriSurfClusterfunction torun_mri_surf_cluster.
0.8.1
Bug fixes
- e86d2e1: If the estimated smoothness is below 1, we now increase it to 1 to avoid problems down the line.
- 04fcd1b: Fixed a bug in
qdecr_clusterswhere it assumes that there is always at least 1 cluster significant. - 251e668: “w-g.pct” files can now be used as a measure by specifying “qdecr_w_g.pct” (underscore instead of hyphen) (fixes #19).
- dc81b89: Added
fwhmargument toqdecr_fastlm, which was missing before (fixes #18).
New (minor) features
- 4f024f3: Added
cwp_thrargument toqdecr_fastlmandqdecrto set the further cluster-wise p-value adjustment (default is 0.025 due to having 2 hemispheres, thus 0.05 / 2) (fixes #23). - 08ae63b: Automatically output two extra files: “significant_clusters.txt” (the output of
summary(vw, annot = TRUE)) and “stack_names.txt” (the output ofstacks(vw)and the corresponding stack numbers) (fixes #17). - 11e2f55: Modified
freeviewandqdecr_snap. Themaskargument is now calledsig. Furthermore, the ranges for the overlay colors are determined dynamically. Finally, users can now set any arguments to Freeview for manipulating surface files (seefreeview --helpon the command line) (fixes #20).
0.8.0 Momo
Version 0.8.0 is the first update after public release. It fixes a bunch of mistakes, introduces further modularization, improves the speed and also reduces the RAM load.
New functions and features
- #2: Added the input argument
dir_target, so that the target can be specified flexibly (fixes #1). - #4/#6: Modularized
qdecr_modeland added the input argumentprep_fun, so that users can choose and create their own prep functions (fixes #3). - #10: Modularized
qdecr_analysisand added the input argumentanalysis_fun, so that users can choose and create their own analysis functions. - #10: The internal function to run vertex-wise analyses, called
vertexwise, now processes regressions in chunks, i.e. more than 1 vertex at a time. This has led to a considerable upgrade in speed, especially for smaller datasets. Chunk size can be controlled withchunk_size(fixes #7).
Bug fixes
- #10: We removed lots of unnecessary dependencies.
- #10: We fixed the referencing to the default mask.
0.7.0 OHBM
Version 0.7.0 is the first version that is publicly released. It is also the version that was presented at OHBM 2019 and was thus named “OHBM”. As we do not have any formal news for versions before 0.7.0, we will keep it brief.
New functions and features
- Creation of the QDECR package (before 0.7.0 it was a series of associated scripts)
- Creation of the
vwobject and associated functions - Handling of imputed datasets (via
imp2list) - Creation of all summary and plot functions
- Creation of the
stackconcept