diff --git a/CHANGELOG.org b/CHANGELOG.org index 165d1c6..f0e3d8f 100644 --- a/CHANGELOG.org +++ b/CHANGELOG.org @@ -2,7 +2,7 @@ - publish PCAone on mac with =libiomp5= support - - update makefile and setup bioconda + - update documentation - add --shuffle option diff --git a/README.org b/README.org index af16faa..4f2ac34 100644 --- a/README.org +++ b/README.org @@ -97,7 +97,7 @@ PCAone is designed to be extensible to accept many different formats. Currently, - eigen vectors :: eigen vectors are saved in file with suffix =.eigvecs=. each row represents a sample and each col represents a PC. - eigen values :: eigen values are saved in file with suffix =.eigvals=. each row represents the eigenvalue of correspoding PC. -- loadings :: loadings are saved in file with suffix =.projection=. need to use =--printv= option. +- loadings :: loadings are saved in file with suffix =.loadings=. need to use =--printv= option. ** Advanced options @@ -163,21 +163,20 @@ Usage: --bfile PREFIX prefix of PLINK .bed/.bim/.fam files. --bgen FILE path of BGEN file. --csv FILE path of zstd compressed csv file. + --maxp INT maximum number of power iteration for Halko.[20] + --printv print out another eigen vectors with suffix .loadings. -e, --emu use EMU algorithm for data with lots of missingness. -f, --fast force to use fast super power iterations for Halko. -h, --halko use Halko method instead of default Arnoldi method. -k, --eigs INT top k components to be calculated.[10] - --maxp INT maximum number of power iteration for Halko.[20] -m, --memory DOUBLE specify the RAM usage in GB unit instead of exploiting the RAM of the server. -n, --threads INT number of threads.[1] - -M, INT number of features. eg, SNPs. - -N, INT number of samples. -o, --out PREFIX prefix of output files. -p, --pcangsd use PCAngsd algorithm for genotype likelihood input. - --printv print out another eigen vectors with projection - suffix. -v, --verbose verbose message output. + -M, INT number of features. eg. SNPs. + -N, INT number of samples. #+end_src diff --git a/src/Data.cpp b/src/Data.cpp index f038c9a..b2fdc27 100755 --- a/src/Data.cpp +++ b/src/Data.cpp @@ -134,7 +134,7 @@ void Data::write_eigs_files(const MyVector& S, const MyMatrix& U, const MyMatrix outu << U << '\n'; } if (params.printv) { - std::ofstream outv(params.outfile + ".projection"); + std::ofstream outv(params.outfile + ".loadings"); if (outv.is_open()) { outv << V << '\n'; } diff --git a/src/Main.cpp b/src/Main.cpp index 20d0f52..884da46 100755 --- a/src/Main.cpp +++ b/src/Main.cpp @@ -70,19 +70,19 @@ void parse_params(int argc, char* argv[], struct Param* params) // ("pfile", "prefix to PLINK2 .pgen/.pvar/.psam files.", cxxopts::value(), "PREFIX") ("bgen", "path of BGEN file.", cxxopts::value(), "FILE") ("csv", "path of zstd compressed csv file.", cxxopts::value(), "FILE") + ("maxp", "maximum number of power iteration for Halko.[20]", cxxopts::value(),"INT") + ("printv", "print out another eigen vectors with suffix .loadings.", cxxopts::value()->default_value("false")) ("e,emu", "use EMU algorithm for data with lots of missingness.", cxxopts::value()->default_value("false")) ("f, fast", "force to use fast super power iterations for Halko.", cxxopts::value()->default_value("false")) ("h, halko", "use Halko method instead of default Arnoldi method.", cxxopts::value()->default_value("false")) ("k,eigs", "top k components to be calculated.[10]", cxxopts::value(),"INT") - ("maxp", "maximum number of power iteration for Halko.[20]", cxxopts::value(),"INT") ("m,memory", "specify the RAM usage in GB unit instead of exploiting the RAM of the server.", cxxopts::value(),"DOUBLE") ("n,threads", "number of threads.[1]", cxxopts::value(),"INT") - ("M", "number of features. eg. SNPs.", cxxopts::value(),"INT") - ("N", "number of samples.", cxxopts::value(),"INT") ("o,out", "prefix of output files.", cxxopts::value(),"PREFIX") ("p,pcangsd", "use PCAngsd algorithm for genotype likelihood input.", cxxopts::value()->default_value("false")) - ("printv", "print out another eigen vectors with projection suffix.", cxxopts::value()->default_value("false")) ("v,verbose", "verbose message output.", cxxopts::value()->default_value("false")) + ("M", "number of features. eg. SNPs.", cxxopts::value(),"INT") + ("N", "number of samples.", cxxopts::value(),"INT") ; opts.add_options("More") ("bands", "number of bands to use for fast Halko.[32]", cxxopts::value(),"INT")