Code Monkey home page Code Monkey logo

echofinemap's People

Contributors

bschilder avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

Forkers

xiechengyong123

echofinemap's Issues

PolyFun can't find R dependencies

I'm working on getting some additional functionality from PolyFun working in the echofinemap::POLYFUN wrapper.
The issue I'm running into is that rpy2 doesn't' seem to be able to find the required R packages, which are installed both on my desktop and within a dedicated conda env called "echoR_mini". In fact, I'm calling python from within the "echoR_mini" conda env.

Command

/Users/schilder/Library/Caches/org.R-project.R/R/basilisk/1.9.11/echoconda/0.99.8/echoR_mini/bin/python /Library/Frameworks/R.framework/Versions/4.2/Resources/library/echofinemap/tools/polyfun/polyfun.py
   
    --compute-h2-L2
   
    --output-prefix /var/folders/zq/h7mtybc533b1qzkys_ttgpth0000gn/T//RtmpQlGIFj/PolyFun/output/dataset1/dataset1
   
    --sumstats /var/folders/zq/h7mtybc533b1qzkys_ttgpth0000gn/T//RtmpQlGIFj/PolyFun/file123db57c7004fsumstats.munged.parquet
   
    --ref-ld-chr /Library/Frameworks/R.framework/Versions/4.2/Resources/library/echofinemap/tools/polyfun/example_data/annotations.
   
    --w-ld-chr /Library/Frameworks/R.framework/Versions/4.2/Resources/library/echofinemap/tools/polyfun/example_data/weights.
   
    --num-bins 20
   
    --allow-missing

Output

********************************************************************
* PolyFun (POLYgenic FUNctionally-informed fine-mapping)
* Version 1.0.0
* (C) 2019-2021 Omer Weissbrod
*********************************************************************

[INFO]  Reading summary statistics from /var/folders/zq/h7mtybc533b1qzkys_ttgpth0000gn/T//RtmpQlGIFj/PolyFun/file123db57c7004fsumstats.munged.parquet ...
[INFO]  Read summary statistics for 182450 SNPs.
[INFO]  Reading reference panel LD Score from /Library/Frameworks/R.framework/Versions/4.2/Resources/library/echofinemap/tools/polyfun/example_data/annotations.[1-22] ...
100%|██████████| 22/22 [00:00<00:00, 40.86it/s]
[INFO]  Read reference panel LD Scores for 182454 SNPs.
[INFO]  Reading regression weight LD Score from /Library/Frameworks/R.framework/Versions/4.2/Resources/library/echofinemap/tools/polyfun/example_data/weights.[1-22] ...
100%|██████████| 22/22 [00:00<00:00, 43.36it/s]
[INFO]  Read regression weight LD Scores for 182454 SNPs.
[INFO]  After merging with reference panel LD, 182450 SNPs remain.
[INFO]  After merging with regression SNP LD, 182450 SNPs remain.
[WARNING]  number of SNPs is smaller than 200k; this is almost always bad.
[INFO]  Removed 6 SNPs with chi^2 > 383.29 (182444 SNPs remain)
[INFO]  iterating over chromosomes to compute XTX, XTy...
100%|██████████| 22/22 [00:00<00:00, 161.02it/s]
[INFO]  Evaluating Ridge lambdas...
100%|██████████| 100/100 [00:00<00:00, 201.49it/s]
[INFO]  Selected ridge lambda: 1.7475e-04 (43/100)  score: 8.7191e-02  score lstsq: 8.7190e-02
100%|██████████| 2/2 [00:00<00:00, 201.82it/s]
[INFO]  Estimating annotation coefficients for each chromosomes set
[INFO]  Computing per-SNP h^2 for each chromosome...
100%|██████████| 22/22 [00:00<00:00, 103.64it/s]
[INFO]  Saving constrained SNP variances to disk
100%|██████████| 22/22 [00:02<00:00, 10.57it/s]
[INFO]  Saving SNP variances to disk
100%|██████████| 22/22 [00:02<00:00, 10.81it/s]
During startup - Warning messages:
1: package "methods" in options("defaultPackages") was not found 
2: package ‘utils’ in options("defaultPackages") was not found 
3: package ‘grDevices’ in options("defaultPackages") was not found 
4: package ‘graphics’ in options("defaultPackages") was not found 
5: package ‘stats’ in options("defaultPackages") was not found 
6: package ‘methods’ in options("defaultPackages") was not found 
[INFO]  Clustering SNPs into bins using the R Ckmeans.1d.dp package
[INFO]  cffi mode is CFFI_MODE.ANY
[INFO]  R home found: /Library/Frameworks/R.framework/Resources
[DEBUG]  Looking for LD_LIBRARY_PATH with: /Library/Frameworks/R.framework/Resources/bin/Rscript -e cat(Sys.getenv("LD_LIBRARY_PATH"))
[INFO]  R library path: 
[INFO]  LD_LIBRARY_PATH: 
[DEBUG]  cffi mode is InterfaceType.API
[INFO]  Default options to initialize R: rpy2, --quiet, --no-save
[WARNING]  R[write to console]: Error in library.dynam(lib, package, package.lib) : 
  shared object ‘methods.dylib’ not found

[ERROR]  Could not load the R package Ckmeans.1d.dp. Either install it or rerun PolyFun with --skip-Ckmedian
[ERROR]  
Traceback (most recent call last):
  File "/Library/Frameworks/R.framework/Versions/4.2/Resources/library/echofinemap/tools/polyfun/polyfun.py", line 848, in <module>
    polyfun_obj.polyfun_main(args)
  File "/Library/Frameworks/R.framework/Versions/4.2/Resources/library/echofinemap/tools/polyfun/polyfun.py", line 772, in polyfun_main
    self.polyfun_h2_L2(args)
  File "/Library/Frameworks/R.framework/Versions/4.2/Resources/library/echofinemap/tools/polyfun/polyfun.py", line 605, in polyfun_h2_L2
    self.partition_snps_to_bins(args, use_ridge=True)
  File "/Library/Frameworks/R.framework/Versions/4.2/Resources/library/echofinemap/tools/polyfun/polyfun.py", line 516, in partition_snps_to_bins
    self.df_bins = self.partition_snps_Ckmedian(args, use_ridge=use_ridge)
  File "/Library/Frameworks/R.framework/Versions/4.2/Resources/library/echofinemap/tools/polyfun/polyfun.py", line 432, in partition_snps_Ckmedian
    import rpy2.robjects.numpy2ri as numpy2ri
  File "/Users/schilder/Library/Caches/org.R-project.R/R/basilisk/1.9.11/echoconda/0.99.8/echoR_mini/lib/python3.9/site-packages/rpy2/robjects/__init__.py", line 18, in <module>
    from rpy2.robjects.robject import RObjectMixin, RObject
  File "/Users/schilder/Library/Caches/org.R-project.R/R/basilisk/1.9.11/echoconda/0.99.8/echoR_mini/lib/python3.9/site-packages/rpy2/robjects/robject.py", line 86, in <module>
    class RObjectMixin(abc.ABC):
  File "/Users/schilder/Library/Caches/org.R-project.R/R/basilisk/1.9.11/echoconda/0.99.8/echoR_mini/lib/python3.9/site-packages/rpy2/robjects/robject.py", line 98, in RObjectMixin
    __show = _get_exported_value('methods', 'show')
  File "/Users/schilder/Library/Caches/org.R-project.R/R/basilisk/1.9.11/echoconda/0.99.8/echoR_mini/lib/python3.9/site-packages/rpy2/rinterface_lib/conversion.py", line 45, in _
    cdata = function(*args, **kwargs)
  File "/Users/schilder/Library/Caches/org.R-project.R/R/basilisk/1.9.11/echoconda/0.99.8/echoR_mini/lib/python3.9/site-packages/rpy2/rinterface.py", line 810, in __call__
    raise embedded.RRuntimeError(_rinterface._geterrmessage())
rpy2.rinterface_lib.embedded.RRuntimeError: Error in library.dynam(lib, package, package.lib) : 
  shared object ‘methods.dylib’ not found

conda list

# packages in environment at /Users/schilder/Library/Caches/org.R-project.R/R/basilisk/1.9.11/echoconda/0.99.8/echoR_mini:
#
# Name                    Version                   Build  Channel
_r-mutex                  1.0.1               anacondar_1    conda-forge
arrow-cpp                 7.0.1           py39h04a14be_6_cpu    conda-forge
attrs                     22.1.0             pyh71513ae_1    conda-forge
aws-c-cal                 0.5.11               hd2e2f4b_0    conda-forge
aws-c-common              0.6.2                h0d85af4_0    conda-forge
aws-c-event-stream        0.2.7               hb9330a7_13    conda-forge
aws-c-io                  0.10.5               h35aa462_0    conda-forge
aws-checksums             0.1.11               h0010a65_7    conda-forge
aws-sdk-cpp               1.8.186              h7c85d8e_4    conda-forge
axel                      2.17.11              h815e4d9_0    conda-forge
bitarray                  2.6.0            py39ha30fb19_1    conda-forge
bokeh                     2.4.3              pyhd8ed1ab_3    conda-forge
brotlipy                  0.7.0           py39ha30fb19_1005    conda-forge
bwidget                   1.9.14               h694c41f_1    conda-forge
bzip2                     1.0.8                h0d85af4_4    conda-forge
c-ares                    1.18.1               h0d85af4_0    conda-forge
ca-certificates           2022.9.24            h033912b_0    conda-forge
cairo                     1.16.0            h904041c_1014    conda-forge
cctools_osx-64            973.0.1             h2b95895_10    conda-forge
certifi                   2022.9.24          pyhd8ed1ab_0    conda-forge
cffi                      1.15.1           py39h131948b_2    conda-forge
charset-normalizer        2.1.1              pyhd8ed1ab_0    conda-forge
clang                     14.0.4               h694c41f_0    conda-forge
clang-14                  14.0.4          default_h55ffa42_0    conda-forge
clang_osx-64              14.0.4               h3a95cd4_2    conda-forge
clangxx                   14.0.4          default_h55ffa42_0    conda-forge
clangxx_osx-64            14.0.4               he1dbc44_2    conda-forge
click                     8.1.3           unix_pyhd8ed1ab_2    conda-forge
cloudpickle               2.2.0              pyhd8ed1ab_0    conda-forge
colorama                  0.4.6              pyhd8ed1ab_0    conda-forge
compiler-rt               14.0.4               h7fcd477_0    conda-forge
compiler-rt_osx-64        14.0.4               h6df654d_0    conda-forge
cramjam                   2.6.0            py39hd4bc93a_0    conda-forge
cryptography              38.0.2           py39h7eb6a14_2    conda-forge
curl                      7.86.0               h57eb407_0    conda-forge
cytoolz                   0.12.0           py39ha30fb19_1    conda-forge
dask                      2022.10.1          pyhd8ed1ab_0    conda-forge
dask-core                 2022.10.1          pyhd8ed1ab_0    conda-forge
deprecated                1.2.13             pyh6c4a22f_0    conda-forge
distributed               2022.10.1          pyhd8ed1ab_0    conda-forge
exceptiongroup            1.0.0              pyhd8ed1ab_0    conda-forge
expat                     2.5.0                hf0c8a7f_0    conda-forge
fastparquet               0.8.3            py39h7cc1f47_1    conda-forge
font-ttf-dejavu-sans-mono 2.37                 hab24e00_0    conda-forge
font-ttf-inconsolata      3.000                h77eed37_0    conda-forge
font-ttf-source-code-pro  2.038                h77eed37_0    conda-forge
font-ttf-ubuntu           0.83                 hab24e00_0    conda-forge
fontconfig                2.14.1               h5bb23bf_0    conda-forge
fonts-conda-ecosystem     1                             0    conda-forge
fonts-conda-forge         1                             0    conda-forge
freetype                  2.12.1               h3f81eb7_0    conda-forge
fribidi                   1.0.10               hbcb3906_0    conda-forge
fsspec                    2022.10.0          pyhd8ed1ab_0    conda-forge
gettext                   0.21.1               h8a4c099_0    conda-forge
gflags                    2.2.2             hb1e8313_1004    conda-forge
gfortran_impl_osx-64      11.3.0              h4c39eb8_25    conda-forge
gfortran_osx-64           11.3.0               h18f7dce_0    conda-forge
glog                      0.6.0                h8ac2a54_0    conda-forge
gmp                       6.2.1                h2e338ed_0    conda-forge
graphite2                 1.3.13            h2e338ed_1001    conda-forge
grpc-cpp                  1.47.1               h834a566_7    conda-forge
gsl                       2.7                  h93259b0_0    conda-forge
gzip                      1.12                 h5eb16cf_0    conda-forge
harfbuzz                  5.3.0                h08f8713_0    conda-forge
heapdict                  1.0.1                      py_0    conda-forge
htslib                    1.16                 h567f53e_0    bioconda
icu                       70.1                 h96cf925_0    conda-forge
idna                      3.4                pyhd8ed1ab_0    conda-forge
iniconfig                 1.1.1              pyh9f0ad1d_0    conda-forge
isl                       0.22.1               hb1e8313_2    conda-forge
jinja2                    3.1.2              pyhd8ed1ab_1    conda-forge
joblib                    1.2.0              pyhd8ed1ab_0    conda-forge
jpeg                      9e                   hac89ed1_2    conda-forge
krb5                      1.19.3               hb49756b_0    conda-forge
lcms2                     2.13.1               h90f4b2a_0    conda-forge
ld64_osx-64               609                 h1e06c2b_10    conda-forge
lerc                      4.0.0                hb486fe8_0    conda-forge
libabseil                 20220623.0      cxx17_h844d122_4    conda-forge
libblas                   3.9.0           16_osx64_openblas    conda-forge
libbrotlicommon           1.0.9                hb7f2c08_8    conda-forge
libbrotlidec              1.0.9                hb7f2c08_8    conda-forge
libbrotlienc              1.0.9                hb7f2c08_8    conda-forge
libcblas                  3.9.0           16_osx64_openblas    conda-forge
libclang-cpp14            14.0.4          default_h55ffa42_0    conda-forge
libcrc32c                 1.1.2                he49afe7_0    conda-forge
libcurl                   7.86.0               h57eb407_0    conda-forge
libcxx                    14.0.6               hccf4f1f_0    conda-forge
libdeflate                1.13                 h775f41a_0    conda-forge
libedit                   3.1.20191231         h0678c8f_2    conda-forge
libev                     4.33                 haf1e3a3_1    conda-forge
libevent                  2.1.10               h815e4d9_4    conda-forge
libffi                    3.4.2                h0d85af4_5    conda-forge
libgfortran               5.0.0           10_4_0_h97931a8_25    conda-forge
libgfortran-devel_osx-64  11.3.0              h824d247_25    conda-forge
libgfortran5              11.3.0              h082f757_25    conda-forge
libglib                   2.74.1               h3ba3332_0    conda-forge
libgoogle-cloud           2.2.0                hb0fe3b0_1    conda-forge
libiconv                  1.17                 hac89ed1_0    conda-forge
libidn2                   2.3.4                hb7f2c08_0    conda-forge
liblapack                 3.9.0           16_osx64_openblas    conda-forge
libllvm14                 14.0.4               h41df66c_0    conda-forge
libnghttp2                1.47.0               h7cbc4dc_1    conda-forge
libopenblas               0.3.21          openmp_h429af6e_3    conda-forge
libpng                    1.6.38               ha978bb4_0    conda-forge
libprotobuf               3.21.9               hbc0c0cd_0    conda-forge
libsqlite                 3.39.4               ha978bb4_0    conda-forge
libssh2                   1.10.0               h7535e13_3    conda-forge
libthrift                 0.16.0               h08c06f4_2    conda-forge
libtiff                   4.4.0                h5e0c7b4_3    conda-forge
libunistring              0.9.10               h0d85af4_0    conda-forge
libutf8proc               2.7.0                h0d85af4_0    conda-forge
libwebp-base              1.2.4                h775f41a_0    conda-forge
libxcb                    1.13              h0d85af4_1004    conda-forge
libxml2                   2.10.3               hb9e07b5_0    conda-forge
libzlib                   1.2.13               hfd90126_4    conda-forge
llvm-openmp               14.0.4               ha654fa7_0    conda-forge
llvm-tools                14.0.4               h41df66c_0    conda-forge
locket                    1.0.0              pyhd8ed1ab_0    conda-forge
lz4                       4.0.2            py39hd0af75a_0    conda-forge
lz4-c                     1.9.3                he49afe7_1    conda-forge
make                      4.3                  h22f3db7_1    conda-forge
markupsafe                2.1.1            py39ha30fb19_2    conda-forge
mpc                       1.2.1                hbb51d92_0    conda-forge
mpfr                      4.1.0                h0f52abe_1    conda-forge
msgpack-python            1.0.4            py39h92daf61_1    conda-forge
ncurses                   6.3                  h96cf925_1    conda-forge
networkx                  2.8.7              pyhd8ed1ab_0    conda-forge
numpy                     1.23.4           py39hdfa1d0c_1    conda-forge
openjpeg                  2.5.0                h5d0d7b0_1    conda-forge
openssl                   1.1.1q               hfd90126_1    conda-forge
orc                       1.8.0                ha9d861c_0    conda-forge
packaging                 21.3               pyhd8ed1ab_0    conda-forge
pandas                    1.5.1            py39hecff1ad_1    conda-forge
pandas-plink              2.2.9            py39h89e85a6_0    conda-forge
pango                     1.50.11              h7fca291_0    conda-forge
parquet-cpp               1.5.1                         2    conda-forge
partd                     1.3.0              pyhd8ed1ab_0    conda-forge
pcre2                     10.37                h3f55489_1    conda-forge
pillow                    9.2.0            py39h35d4919_3    conda-forge
pip                       22.3               pyhd8ed1ab_0    conda-forge
pixman                    0.40.0               hbcb3906_0    conda-forge
pluggy                    1.0.0            py39h6e9494a_4    conda-forge
psutil                    5.9.3            py39ha30fb19_1    conda-forge
pthread-stubs             0.4               hc929b4f_1001    conda-forge
pyarrow                   7.0.1           py39hb941c77_6_cpu    conda-forge
pycparser                 2.21               pyhd8ed1ab_0    conda-forge
pyopenssl                 22.1.0             pyhd8ed1ab_0    conda-forge
pyparsing                 3.0.9              pyhd8ed1ab_0    conda-forge
pysocks                   1.7.1              pyha2e5f31_6    conda-forge
pytest                    7.2.0            py39h6e9494a_1    conda-forge
python                    3.9.13          h57e37ff_0_cpython    conda-forge
python-dateutil           2.8.2              pyhd8ed1ab_0    conda-forge
python-tzdata             2022.5             pyhd8ed1ab_0    conda-forge
python_abi                3.9                      2_cp39    conda-forge
pytz                      2022.5             pyhd8ed1ab_0    conda-forge
pytz-deprecation-shim     0.1.0.post0      py39h6e9494a_3    conda-forge
pyyaml                    6.0              py39ha30fb19_5    conda-forge
r-backports               1.4.1             r42h815d134_1    conda-forge
r-base                    4.2.1                he54549f_2    conda-forge
r-brio                    1.1.3             r42h815d134_1    conda-forge
r-callr                   3.7.2             r42hc72bb7e_1    conda-forge
r-ckmeans.1d.dp           4.3.4             r42h49197e3_1    conda-forge
r-cli                     3.4.1             r42h49197e3_1    conda-forge
r-colorspace              2.0_3             r42h815d134_1    conda-forge
r-crayon                  1.5.2             r42hc72bb7e_1    conda-forge
r-desc                    1.4.2             r42hc72bb7e_1    conda-forge
r-diffobj                 0.3.5             r42h815d134_1    conda-forge
r-digest                  0.6.30            r42h49197e3_0    conda-forge
r-ellipsis                0.3.2             r42h815d134_1    conda-forge
r-evaluate                0.17              r42hc72bb7e_1    conda-forge
r-expm                    0.999_6           r42h63324e3_1    conda-forge
r-fansi                   1.0.3             r42h815d134_1    conda-forge
r-farver                  2.1.1             r42h49197e3_1    conda-forge
r-fs                      1.5.2             r42h49197e3_2    conda-forge
r-gbrd                    0.4_11          r42hc72bb7e_1004    conda-forge
r-ggplot2                 3.3.6             r42hc72bb7e_1    conda-forge
r-glue                    1.6.2             r42h815d134_1    conda-forge
r-gtable                  0.3.1             r42hc72bb7e_1    conda-forge
r-irlba                   2.3.5.1           r42hce01bf1_0    conda-forge
r-isoband                 0.2.6             r42h49197e3_1    conda-forge
r-jsonlite                1.8.3             r42h815d134_0    conda-forge
r-labeling                0.4.2             r42hc72bb7e_2    conda-forge
r-lattice                 0.20_45           r42h815d134_1    conda-forge
r-lifecycle               1.0.3             r42hc72bb7e_1    conda-forge
r-magrittr                2.0.3             r42h815d134_1    conda-forge
r-mass                    7.3_58.1          r42h815d134_1    conda-forge
r-matrix                  1.5_1             r42hce01bf1_0    conda-forge
r-matrixstats             0.62.0            r42h815d134_1    conda-forge
r-mgcv                    1.8_41            r42h40f944a_0    conda-forge
r-mixsqp                  0.3_43            r42hf5e6a41_2    conda-forge
r-munsell                 0.5.0           r42hc72bb7e_1005    conda-forge
r-nlme                    3.1_160           r42h1e4e481_0    conda-forge
r-pillar                  1.8.1             r42hc72bb7e_1    conda-forge
r-pkgconfig               2.0.3             r42hc72bb7e_2    conda-forge
r-pkgload                 1.3.1             r42hc72bb7e_0    conda-forge
r-plyr                    1.8.7             r42h49197e3_1    conda-forge
r-praise                  1.0.0           r42hc72bb7e_1006    conda-forge
r-processx                3.8.0             r42h815d134_0    conda-forge
r-ps                      1.7.2             r42h815d134_0    conda-forge
r-r6                      2.5.1             r42hc72bb7e_1    conda-forge
r-rbibutils               2.2.9             r42h815d134_1    conda-forge
r-rcolorbrewer            1.1_3             r42h785f33e_1    conda-forge
r-rcpp                    1.0.9             r42h49197e3_2    conda-forge
r-rcpparmadillo           0.11.4.0.1        r42hf5e6a41_0    conda-forge
r-rdpack                  2.4               r42hc72bb7e_1    conda-forge
r-rematch2                2.1.2             r42hc72bb7e_2    conda-forge
r-reshape                 0.8.9             r42hbe3e9c8_1    conda-forge
r-rlang                   1.0.6             r42h49197e3_1    conda-forge
r-rprojroot               2.0.3             r42hc72bb7e_1    conda-forge
r-scales                  1.2.1             r42hc72bb7e_1    conda-forge
r-stringi                 1.7.8             r42h7183e51_1    conda-forge
r-susier                  0.12.27           r42hc72bb7e_1    conda-forge
r-testthat                3.1.5             r42h49197e3_1    conda-forge
r-tibble                  3.1.8             r42h815d134_1    conda-forge
r-utf8                    1.2.2             r42h815d134_1    conda-forge
r-vctrs                   0.5.0             r42h49197e3_0    conda-forge
r-viridislite             0.4.1             r42hc72bb7e_1    conda-forge
r-waldo                   0.4.0             r42hc72bb7e_1    conda-forge
r-withr                   2.5.0             r42hc72bb7e_1    conda-forge
r-xml2                    1.3.3             r42h3576887_2    conda-forge
re2                       2022.06.01           hb486fe8_0    conda-forge
readline                  8.1.2                h3899abd_0    conda-forge
requests                  2.28.1             pyhd8ed1ab_1    conda-forge
rpy2                      3.5.1           py39r42h7cc1f47_1    conda-forge
scikit-learn              1.1.3            py39hdbdcc14_1    conda-forge
scipy                     1.9.3            py39h8a15683_1    conda-forge
setuptools                65.5.0             pyhd8ed1ab_0    conda-forge
sigtool                   0.1.3                h57ddcff_0    conda-forge
simplegeneric             0.8.1                      py_1    conda-forge
six                       1.16.0             pyh6c4a22f_0    conda-forge
snappy                    1.1.9                h6e38e02_1    conda-forge
sortedcontainers          2.4.0              pyhd8ed1ab_0    conda-forge
sqlite                    3.39.4               h9ae0607_0    conda-forge
tabix                     1.11                 hdfd78af_0    bioconda
tapi                      1100.0.11            h9ce4665_0    conda-forge
tblib                     1.7.0              pyhd8ed1ab_0    conda-forge
threadpoolctl             3.1.0              pyh8a188c0_0    conda-forge
tk                        8.6.12               h5dbffcc_0    conda-forge
tktable                   2.10                 h49f0cf7_3    conda-forge
tomli                     2.0.1              pyhd8ed1ab_0    conda-forge
toolz                     0.12.0             pyhd8ed1ab_0    conda-forge
tornado                   6.1              py39h63b48b0_3    conda-forge
tqdm                      4.64.1             pyhd8ed1ab_0    conda-forge
typing_extensions         4.4.0              pyha770c72_0    conda-forge
tzdata                    2022e                h191b570_0    conda-forge
tzlocal                   4.2              py39h6e9494a_2    conda-forge
urllib3                   1.26.11            pyhd8ed1ab_0    conda-forge
wget                      1.20.3               h52ee1ee_1    conda-forge
wheel                     0.37.1             pyhd8ed1ab_0    conda-forge
wrapt                     1.14.1           py39ha30fb19_1    conda-forge
xarray                    2022.10.0          pyhd8ed1ab_0    conda-forge
xorg-libxau               1.0.9                h35c211d_0    conda-forge
xorg-libxdmcp             1.1.3                h35c211d_0    conda-forge
xz                        5.2.6                h775f41a_0    conda-forge
yaml                      0.2.5                h0d85af4_2    conda-forge
zict                      2.2.0              pyhd8ed1ab_0    conda-forge
zlib                      1.2.13               hfd90126_4    conda-forge
zstandard                 0.18.0           py39ha30fb19_1    conda-forge
zstd                      1.5.2                hfa58983_4    conda-forge

rpy2 version

rpy2                      3.5.1           py39r42h7cc1f47_1    conda-forge

Conda env yaml

You can use the following yaml to create the env I'm using:
echoR_mini.yml.txt

test POLYFUN.finemapper() function

finemapper is a function provided by PolyFun wrap together the full fine-mapping pipeline. Need to test how this compares to running each step individually (current implementation).

Reimplement PAINTOR

  • Now working with echoverse.
  • Generalized to any data input type (GWAS/QTL/TWAS)
    to avoid hard-coded args.
  • Streamlined functions and reduced clutter.
  • Automated installation of PAINTOR. #12
  • Added unit tests.
  • Get/query full PAINTOR annotations RajLabMSSM/echoannot#10
  • User-supplied annotations via annot
  • xgr/roadmap annotations.

ABF fails to run for a qt trait

I just got this running

Note that:

  • ABF does not get to if proportion_cases is missinng
  • polyfun_susie is missing the environment.

Code

columnsnames = echodata::construct_colmap(munged= FALSE,
                                          CHR = "CHR", POS = "POS",
                                          SNP = "SNP", P = "P",
                                          Effect = "BETA", StdErr = "SE", 
                                          A1 = "A1", A2 = "A2", Freq = "FREQ",
                                          N = "N")
                                          #N_cases = NULL, N_controls = NULL,
                                          #proportion_cases = NULL,
                                          #MAF = "calculate",
                                          #tstat = NULL)


# Pass the sample size as "N" column
# compute_n will do all what is in the docu f N does not exist



finemap_loci(# GENERAL ARGUMENTS 
                                          topSNPs = topSNPs,
                                          results_dir = fullRS_path,
                                          loci = topSNPs$Locus,
                                          dataset_name = "LID_COX",
                                          dataset_type = "GWAS",  
                                          force_new_subset = TRUE,
                                          force_new_LD = FALSE,
                                          force_new_finemap = TRUE,
                                          remove_tmps = FALSE,
                                          
                                          finemap_methods = c("ABF","FINEMAP","SUSIE", "POLYFUN_SUSIE"),
                                          
                                          # Munge full sumstats first
                                          munged = FALSE,
                                          colmap = columnsnames,
                                          # SUMMARY STATS ARGUMENTS
                                          fullSS_path = newSS_name_colmap,
                                          fullSS_genome_build = "hg19",
                                          query_by ="tabix",
                                          
                                          #compute_n = 3500,


                                          bp_distance = 10000,#500000*2,
                                          min_MAF = 0.001, 
                                          trim_gene_limits = FALSE,
                                          
                                          
                                          case_control = FALSE,
                                          
                                          
                                         
                                          # FINE-MAPPING ARGUMENTS
                                          ## General
                                          n_causal = 5,
                                          credset_thresh = .95,
                                          consensus_thresh = 2,
                                         

                                          # LD ARGUMENTS 
                                          LD_reference = "1KGphase3",#"UKB",
                                          superpopulation = "EUR",
                                          download_method = "axel",
                                          LD_genome_build = "hg19",
                                          leadSNP_LD_block = FALSE,
                                         
                                          #### PLotting args ####
                                          plot_types = c("simple"),
                                          show_plot = TRUE,
                                          zoom = "1x",
                                          tx_biotypes = NULL,
                                          nott_epigenome = FALSE,
                                          nott_show_placseq = FALSE,
                                          nott_binwidth = 200,
                                          nott_bigwig_dir = NULL,
                                          xgr_libnames = NULL,
                                          roadmap = FALSE,
                                          roadmap_query = NULL,
                                          
                                          #### General args ####
                                          seed = 2022,
                                          nThread = 20,
                                          verbose = TRUE
                                          )

Output

PolyFun submodule already installed.
┌─────────────────────────────────────────────────┐
│                                                 │
│   )))> 🦇 RP11-240A16.1 [locus 1 / 3] 🦇 <(((   │
│                                                 │
└─────────────────────────────────────────────────┘

──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 1 ▶▶▶ Query 🔎 ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
+ Query Method: tabix
Constructing GRanges query using min/max ranges within a single chromosome.
query_dat is already a GRanges object. Returning directly.
========= echotabix::convert =========
Converting full summary stats file to tabix format for fast querying.
Inferred format: 'table'
Explicit format: 'table'
Inferring comment_char from tabular header: 'SNP'
Determining chrom type from file header.
Chromosome format: 1
Detecting column delimiter.
Identified column separator: \t
Sorting rows by coordinates via bash.
Searching for header row with grep.
( grep ^'SNP' .../QC_SNPs_COLMAP.txt; grep
    -v ^'SNP' .../QC_SNPs_COLMAP.txt | sort
    -k2,2n
    -k3,3n ) > .../file2fb2fcecd3b_sorted.tsv
Constructing outputs
Using existing bgzipped file: /home/rstudio/echolocatoR/echolocatoR_LID/QC_SNPs_COLMAP.txt.bgz 
Set force_new=TRUE to override this.
Tabix-indexing file using: Rsamtools
Data successfully converted to bgzip-compressed, tabix-indexed format.
========= echotabix::query =========
query_dat is already a GRanges object. Returning directly.
Inferred format: 'table'
Querying tabular tabix file using: Rsamtools.
Checking query chromosome style is correct.
Chromosome format: 1
Retrieving data.
Converting query results to data.table.
Processing query: 4:32425284-32445284
Adding 'query' column to results.
Retrieved data with 76 rows
Saving query ==> /home/rstudio/echolocatoR/echolocatoR_LID/RESULTS/GWAS/LID_COX/RP11-240A16.1/RP11-240A16.1_LID_COX_subset.tsv.gz
+ Query: 76 SNPs x 10 columns.
Standardizing summary statistics subset.
Standardizing main column names.
++ Preparing A1,A1 cols
++ Preparing MAF,Freq cols.
++ Could not infer MAF.
++ Preparing N_cases,N_controls cols.
++ Preparing proportion_cases col.
++ proportion_cases not included in data subset.
Preparing sample size column (N).
Using existing 'N' column.
+ Imputing t-statistic from Effect and StdErr.
+ leadSNP missing. Assigning new one by min p-value.
++ Ensuring Effect,StdErr,P are numeric.
++ Ensuring 1 SNP per row and per genomic coordinate.
++ Removing extra whitespace
+ Standardized query: 76 SNPs x 12 columns.
++ Saving standardized query ==> /home/rstudio/echolocatoR/echolocatoR_LID/RESULTS/GWAS/LID_COX/RP11-240A16.1/RP11-240A16.1_LID_COX_subset.tsv.gz

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 2 ▶▶▶ Extract Linkage Disequilibrium 🔗 ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
LD_reference identified as: 1kg.
Previously computed LD_matrix detected. Importing: /home/rstudio/echolocatoR/echolocatoR_LID/RESULTS/GWAS/LID_COX/RP11-240A16.1/LD/RP11-240A16.1.1KGphase3_LD.RDS
LD_reference identified as: r.
Converting obj to sparseMatrix.
+ FILTER:: Filtering by LD features.

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 3 ▶▶▶ Filter SNPs 🚰 ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
FILTER:: Filtering by SNP features.
+ FILTER:: Post-filtered data: 76 x 12
+ Subsetting LD matrix and dat to common SNPs...
Removing unnamed rows/cols
Replacing NAs with 0
+ LD_matrix = 76 SNPs.
+ dat = 76 SNPs.
+ 76 SNPs in common.
Converting obj to sparseMatrix.

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 4 ▶▶▶ Fine-map 🔊 ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Gathering method sources.
Gathering method citations.
Preparing sample size column (N).
Using existing 'N' column.
Gathering method sources.
Gathering method citations.
Gathering method sources.
Gathering method citations.
ABF
🚫 Missing required column(s) for ABF [skipping]: MAF, proportion_cases
FINEMAP
✅ All required columns present.
⚠ Missing optional column(s) for FINEMAP: MAF
SUSIE
✅ All required columns present.
✅ All optional columns present.
POLYFUN_SUSIE
✅ All required columns present.
⚠ Missing optional column(s) for POLYFUN_SUSIE: MAF
++ Fine-mapping using 3 tool(s): FINEMAP, SUSIE, POLYFUN_SUSIE

+++ Multi-finemap:: FINEMAP +++
Preparing sample size column (N).
Using existing 'N' column.
+ Subsetting LD matrix and dat to common SNPs...
Removing unnamed rows/cols
Replacing NAs with 0
+ LD_matrix = 76 SNPs.
+ dat = 76 SNPs.
+ 76 SNPs in common.
Converting obj to sparseMatrix.
Constructing master file.
Optional MAF col missing. Replacing with all '.1's
Constructing data.z file.
Constructing data.ld file.
FINEMAP path: /home/rstudio/.cache/R/echofinemap/FINEMAP/finemap_v1.4.1_x86_64/finemap_v1.4.1_x86_64
Inferred FINEMAP version: 1.4.1
Running FINEMAP.
cd .../RP11-240A16.1 &&
    .../finemap_v1.4.1_x86_64
   
    --sss
   
    --in-files .../master
   
    --log
   
    --n-threads 20
   
    --n-causal-snps 5

|--------------------------------------|
| Welcome to FINEMAP v1.4.1            |
|                                      |
| (c) 2015-2022 University of Helsinki |
|                                      |
| Help :                               |
| - ./finemap --help                   |
| - www.finemap.me                     |
| - www.christianbenner.com            |
|                                      |
| Contact :                            |
| - [email protected]        |
| - [email protected]          |
|--------------------------------------|

--------
SETTINGS
--------
- dataset            : all
- corr-config        : 0.95
- n-causal-snps      : 5
- n-configs-top      : 50000
- n-conv-sss         : 100
- n-iter             : 100000
- n-threads          : 20
- prior-k0           : 0
- prior-std          : 0.05 
- prob-conv-sss-tol  : 0.001
- prob-cred-set      : 0.95

------------
FINE-MAPPING (1/1)
------------
- GWAS summary stats               : FINEMAP/data.z
- SNP correlations                 : FINEMAP/data.ld
- Causal SNP stats                 : FINEMAP/data.snp
- Causal configurations            : FINEMAP/data.config
- Credible sets                    : FINEMAP/data.cred
- Log file                         : FINEMAP/data.log_sss
- Reading input                    : done!   

- Updated prior SD of effect sizes : 0.05 0.0528 0.0558 0.0589 

- Number of GWAS samples           : 2687
- Number of SNPs                   : 76
- Prior-Pr(# of causal SNPs is k)  : 
  (0 -> 0)
   1 -> 0.584
   2 -> 0.292
   3 -> 0.096
   4 -> 0.0234
   5 -> 0.00449
- 1800 configurations evaluated (0.122/100%) : converged after 122 iterations
- Computing causal SNP statistics  : done!   
- Regional SNP heritability        : 0.0276 (SD: 0.00441 ; 95% CI: [0.0196,0.0371])
- Log10-BF of >= one causal SNP    : 24.4
- Post-expected # of causal SNPs   : 4.74
- Post-Pr(# of causal SNPs is k)   : 
  (0 -> 0)
   1 -> 9.4e-21
   2 -> 2.73e-11
   3 -> 1.41e-07
   4 -> 0.265
   5 -> 0.735
- Writing output                   : done!   
- Run time                         : 0 hours, 0 minutes, 0 seconds
2 data.cred* file(s) found in the same subfolder.
Selected file based on postPr_k: data.cred5
Importing conditional probabilities (.cred file).
No configurations were causal at PP>=0.95.
Importing marginal probabilities (.snp file).
Importing configuration probabilities (.config file).
FINEMAP was unable to identify any credible sets at PP>=0.95.
++ Credible Set SNPs identified = 0
++ Merging FINEMAP results with multi-finemap data.

+++ Multi-finemap:: SUSIE +++
Loading required namespace: Rfast
Failed with error:  'there is no package called 'Rfast''
Preparing sample size column (N).
Using existing 'N' column.
+ SUSIE:: sample_size=2,687
+ Subsetting LD matrix and dat to common SNPs...
Removing unnamed rows/cols
Replacing NAs with 0
+ LD_matrix = 76 SNPs.
+ dat = 76 SNPs.
+ 76 SNPs in common.
Converting obj to sparseMatrix.
+ SUSIE:: Using `susie_rss()` from susieR v0.12.27
+ SUSIE:: Extracting Credible Sets.
++ Credible Set SNPs identified = 2
++ Merging SUSIE results with multi-finemap data.

+++ Multi-finemap:: POLYFUN_SUSIE +++
PolyFun submodule already installed.
PolyFun:: Fine-mapping with method=SUSIE
PolyFun:: Using priors from mode=precomputed
Unable to find conda binary. Is Anaconda installed?Locus RP11-240A16.1 complete in: 0.33 min
┌─────────────────────────────────────────┐
│                                         │
│   )))> 🦇 XYLT1 [locus 2 / 3] 🦇 <(((   │
│                                         │
└─────────────────────────────────────────┘

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 1 ▶▶▶ Query 🔎 ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
+ Query Method: tabix
Constructing GRanges query using min/max ranges within a single chromosome.
query_dat is already a GRanges object. Returning directly.
========= echotabix::convert =========
Converting full summary stats file to tabix format for fast querying.
Inferred format: 'table'
Explicit format: 'table'
Inferring comment_char from tabular header: 'SNP'
Determining chrom type from file header.
Chromosome format: 1
Detecting column delimiter.
Identified column separator: \t
Sorting rows by coordinates via bash.
Searching for header row with grep.
( grep ^'SNP' .../QC_SNPs_COLMAP.txt; grep
    -v ^'SNP' .../QC_SNPs_COLMAP.txt | sort
    -k2,2n
    -k3,3n ) > .../file2fb33669f7f_sorted.tsv
Constructing outputs
Using existing bgzipped file: /home/rstudio/echolocatoR/echolocatoR_LID/QC_SNPs_COLMAP.txt.bgz 
Set force_new=TRUE to override this.
Tabix-indexing file using: Rsamtools
Data successfully converted to bgzip-compressed, tabix-indexed format.
========= echotabix::query =========
query_dat is already a GRanges object. Returning directly.
Inferred format: 'table'
Querying tabular tabix file using: Rsamtools.
Checking query chromosome style is correct.
Chromosome format: 1
Retrieving data.
Converting query results to data.table.
Processing query: 16:17034975-17054975
Adding 'query' column to results.
Retrieved data with 80 rows
Saving query ==> /home/rstudio/echolocatoR/echolocatoR_LID/RESULTS/GWAS/LID_COX/XYLT1/XYLT1_LID_COX_subset.tsv.gz
+ Query: 80 SNPs x 10 columns.
Standardizing summary statistics subset.
Standardizing main column names.
++ Preparing A1,A1 cols
++ Preparing MAF,Freq cols.
++ Could not infer MAF.
++ Preparing N_cases,N_controls cols.
++ Preparing proportion_cases col.
++ proportion_cases not included in data subset.
Preparing sample size column (N).
Using existing 'N' column.
+ Imputing t-statistic from Effect and StdErr.
+ leadSNP missing. Assigning new one by min p-value.
++ Ensuring Effect,StdErr,P are numeric.
++ Ensuring 1 SNP per row and per genomic coordinate.
++ Removing extra whitespace
+ Standardized query: 80 SNPs x 12 columns.
++ Saving standardized query ==> /home/rstudio/echolocatoR/echolocatoR_LID/RESULTS/GWAS/LID_COX/XYLT1/XYLT1_LID_COX_subset.tsv.gz

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 2 ▶▶▶ Extract Linkage Disequilibrium 🔗 ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
LD_reference identified as: 1kg.
Previously computed LD_matrix detected. Importing: /home/rstudio/echolocatoR/echolocatoR_LID/RESULTS/GWAS/LID_COX/XYLT1/LD/XYLT1.1KGphase3_LD.RDS
LD_reference identified as: r.
Converting obj to sparseMatrix.
+ FILTER:: Filtering by LD features.

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 3 ▶▶▶ Filter SNPs 🚰 ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
FILTER:: Filtering by SNP features.
+ FILTER:: Post-filtered data: 78 x 12
+ Subsetting LD matrix and dat to common SNPs...
Removing unnamed rows/cols
Replacing NAs with 0
+ LD_matrix = 78 SNPs.
+ dat = 78 SNPs.
+ 78 SNPs in common.
Converting obj to sparseMatrix.

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 4 ▶▶▶ Fine-map 🔊 ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Gathering method sources.
Gathering method citations.
Preparing sample size column (N).
Using existing 'N' column.
Gathering method sources.
Gathering method citations.
Gathering method sources.
Gathering method citations.
ABF
🚫 Missing required column(s) for ABF [skipping]: MAF, proportion_cases
FINEMAP
✅ All required columns present.
⚠ Missing optional column(s) for FINEMAP: MAF
SUSIE
✅ All required columns present.
✅ All optional columns present.
POLYFUN_SUSIE
✅ All required columns present.
⚠ Missing optional column(s) for POLYFUN_SUSIE: MAF
++ Fine-mapping using 3 tool(s): FINEMAP, SUSIE, POLYFUN_SUSIE

+++ Multi-finemap:: FINEMAP +++
Preparing sample size column (N).
Using existing 'N' column.
+ Subsetting LD matrix and dat to common SNPs...
Removing unnamed rows/cols
Replacing NAs with 0
+ LD_matrix = 78 SNPs.
+ dat = 78 SNPs.
+ 78 SNPs in common.
Converting obj to sparseMatrix.
Constructing master file.
Optional MAF col missing. Replacing with all '.1's
Constructing data.z file.
Constructing data.ld file.
FINEMAP path: /home/rstudio/.cache/R/echofinemap/FINEMAP/finemap_v1.4.1_x86_64/finemap_v1.4.1_x86_64
Inferred FINEMAP version: 1.4.1
Running FINEMAP.
cd .../XYLT1 &&
    .../finemap_v1.4.1_x86_64
   
    --sss
   
    --in-files .../master
   
    --log
   
    --n-threads 20
   
    --n-causal-snps 5

|--------------------------------------|
| Welcome to FINEMAP v1.4.1            |
|                                      |
| (c) 2015-2022 University of Helsinki |
|                                      |
| Help :                               |
| - ./finemap --help                   |
| - www.finemap.me                     |
| - www.christianbenner.com            |
|                                      |
| Contact :                            |
| - [email protected]        |
| - [email protected]          |
|--------------------------------------|

--------
SETTINGS
--------
- dataset            : all
- corr-config        : 0.95
- n-causal-snps      : 5
- n-configs-top      : 50000
- n-conv-sss         : 100
- n-iter             : 100000
- n-threads          : 20
- prior-k0           : 0
- prior-std          : 0.05 
- prob-conv-sss-tol  : 0.001
- prob-cred-set      : 0.95

------------
FINE-MAPPING (1/1)
------------
- GWAS summary stats               : FINEMAP/data.z
- SNP correlations                 : FINEMAP/data.ld
- Causal SNP stats                 : FINEMAP/data.snp
- Causal configurations            : FINEMAP/data.config
- Credible sets                    : FINEMAP/data.cred
- Log file                         : FINEMAP/data.log_sss
- Reading input                    : done!   

- Updated prior SD of effect sizes : 0.05 0.0522 0.0545 0.0568 

- Number of GWAS samples           : 2687
- Number of SNPs                   : 78
- Prior-Pr(# of causal SNPs is k)  : 
  (0 -> 0)
   1 -> 0.584
   2 -> 0.292
   3 -> 0.0961
   4 -> 0.0234
   5 -> 0.0045
- 1077 configurations evaluated (0.198/100%) : converged after 198 iterations
- Computing causal SNP statistics  : done!   
- Regional SNP heritability        : 0.0119 (SD: 0.00385 ; 95% CI: [0.00536,0.0204])
- Log10-BF of >= one causal SNP    : 4.46
- Post-expected # of causal SNPs   : 1.96
- Post-Pr(# of causal SNPs is k)   : 
  (0 -> 0)
   1 -> 0.245
   2 -> 0.548
   3 -> 0.204
   4 -> 0.00238
   5 -> 0
- Writing output                   : done!   
- Run time                         : 0 hours, 0 minutes, 0 seconds
3 data.cred* file(s) found in the same subfolder.
Selected file based on postPr_k: data.cred2
Importing conditional probabilities (.cred file).
No configurations were causal at PP>=0.95.
Importing marginal probabilities (.snp file).
Importing configuration probabilities (.config file).
FINEMAP was unable to identify any credible sets at PP>=0.95.
++ Credible Set SNPs identified = 0
++ Merging FINEMAP results with multi-finemap data.

+++ Multi-finemap:: SUSIE +++
Loading required namespace: Rfast
Failed with error:  'there is no package called 'Rfast''
In addition: Warning messages:
1: In SUSIE(dat = dat, dataset_type = dataset_type, LD_matrix = LD_matrix,  :
  Install Rfast to speed up susieR even further:
   install.packages('Rfast')
2: In susie_suff_stat(XtX = XtX, Xty = Xty, n = n, yty = (n - 1) *  :
  IBSS algorithm did not converge in 100 iterations!
                  Please check consistency between summary statistics and LD matrix.
                  See https://stephenslab.github.io/susieR/articles/susierss_diagnostic.html
Preparing sample size column (N).
Using existing 'N' column.
+ SUSIE:: sample_size=2,687
+ Subsetting LD matrix and dat to common SNPs...
Removing unnamed rows/cols
Replacing NAs with 0
+ LD_matrix = 78 SNPs.
+ dat = 78 SNPs.
+ 78 SNPs in common.
Converting obj to sparseMatrix.
+ SUSIE:: Using `susie_rss()` from susieR v0.12.27
+ SUSIE:: Extracting Credible Sets.
++ Credible Set SNPs identified = 1
++ Merging SUSIE results with multi-finemap data.

+++ Multi-finemap:: POLYFUN_SUSIE +++
PolyFun submodule already installed.
PolyFun:: Fine-mapping with method=SUSIE
PolyFun:: Using priors from mode=precomputed
Unable to find conda binary. Is Anaconda installed?Locus XYLT1 complete in: 0.32 min
┌────────────────────────────────────────┐
│                                        │
│   )))> 🦇 LRP8 [locus 3 / 3] 🦇 <(((   │
│                                        │
└────────────────────────────────────────┘

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 1 ▶▶▶ Query 🔎 ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
+ Query Method: tabix
Constructing GRanges query using min/max ranges within a single chromosome.
query_dat is already a GRanges object. Returning directly.
========= echotabix::convert =========
Converting full summary stats file to tabix format for fast querying.
Inferred format: 'table'
Explicit format: 'table'
Inferring comment_char from tabular header: 'SNP'
Determining chrom type from file header.
Chromosome format: 1
Detecting column delimiter.
Identified column separator: \t
Sorting rows by coordinates via bash.
Searching for header row with grep.
( grep ^'SNP' .../QC_SNPs_COLMAP.txt; grep
    -v ^'SNP' .../QC_SNPs_COLMAP.txt | sort
    -k2,2n
    -k3,3n ) > .../file2fb4113b218_sorted.tsv
Constructing outputs
Using existing bgzipped file: /home/rstudio/echolocatoR/echolocatoR_LID/QC_SNPs_COLMAP.txt.bgz 
Set force_new=TRUE to override this.
Tabix-indexing file using: Rsamtools
Data successfully converted to bgzip-compressed, tabix-indexed format.
========= echotabix::query =========
query_dat is already a GRanges object. Returning directly.
Inferred format: 'table'
Querying tabular tabix file using: Rsamtools.
Checking query chromosome style is correct.
Chromosome format: 1
Retrieving data.
Converting query results to data.table.
Processing query: 1:53768300-53788300
Adding 'query' column to results.
Retrieved data with 52 rows
Saving query ==> /home/rstudio/echolocatoR/echolocatoR_LID/RESULTS/GWAS/LID_COX/LRP8/LRP8_LID_COX_subset.tsv.gz
+ Query: 52 SNPs x 10 columns.
Standardizing summary statistics subset.
Standardizing main column names.
++ Preparing A1,A1 cols
++ Preparing MAF,Freq cols.
++ Could not infer MAF.
++ Preparing N_cases,N_controls cols.
++ Preparing proportion_cases col.
++ proportion_cases not included in data subset.
Preparing sample size column (N).
Using existing 'N' column.
+ Imputing t-statistic from Effect and StdErr.
+ leadSNP missing. Assigning new one by min p-value.
++ Ensuring Effect,StdErr,P are numeric.
++ Ensuring 1 SNP per row and per genomic coordinate.
++ Removing extra whitespace
+ Standardized query: 52 SNPs x 12 columns.
++ Saving standardized query ==> /home/rstudio/echolocatoR/echolocatoR_LID/RESULTS/GWAS/LID_COX/LRP8/LRP8_LID_COX_subset.tsv.gz

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 2 ▶▶▶ Extract Linkage Disequilibrium 🔗 ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
LD_reference identified as: 1kg.
Previously computed LD_matrix detected. Importing: /home/rstudio/echolocatoR/echolocatoR_LID/RESULTS/GWAS/LID_COX/LRP8/LD/LRP8.1KGphase3_LD.RDS
LD_reference identified as: r.
Converting obj to sparseMatrix.
+ FILTER:: Filtering by LD features.

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 3 ▶▶▶ Filter SNPs 🚰 ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
FILTER:: Filtering by SNP features.
+ FILTER:: Post-filtered data: 51 x 12
+ Subsetting LD matrix and dat to common SNPs...
Removing unnamed rows/cols
Replacing NAs with 0
+ LD_matrix = 51 SNPs.
+ dat = 51 SNPs.
+ 51 SNPs in common.
Converting obj to sparseMatrix.

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 4 ▶▶▶ Fine-map 🔊 ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Gathering method sources.
Gathering method citations.
Preparing sample size column (N).
Using existing 'N' column.
Gathering method sources.
Gathering method citations.
Gathering method sources.
Gathering method citations.
ABF
🚫 Missing required column(s) for ABF [skipping]: MAF, proportion_cases
FINEMAP
✅ All required columns present.
⚠ Missing optional column(s) for FINEMAP: MAF
SUSIE
✅ All required columns present.
✅ All optional columns present.
POLYFUN_SUSIE
✅ All required columns present.
⚠ Missing optional column(s) for POLYFUN_SUSIE: MAF
++ Fine-mapping using 3 tool(s): FINEMAP, SUSIE, POLYFUN_SUSIE

+++ Multi-finemap:: FINEMAP +++
Preparing sample size column (N).
Using existing 'N' column.
+ Subsetting LD matrix and dat to common SNPs...
Removing unnamed rows/cols
Replacing NAs with 0
+ LD_matrix = 51 SNPs.
+ dat = 51 SNPs.
+ 51 SNPs in common.
Converting obj to sparseMatrix.
Constructing master file.
Optional MAF col missing. Replacing with all '.1's
Constructing data.z file.
Constructing data.ld file.
FINEMAP path: /home/rstudio/.cache/R/echofinemap/FINEMAP/finemap_v1.4.1_x86_64/finemap_v1.4.1_x86_64
Inferred FINEMAP version: 1.4.1
Running FINEMAP.
cd .../LRP8 &&
    .../finemap_v1.4.1_x86_64
   
    --sss
   
    --in-files .../master
   
    --log
   
    --n-threads 20
   
    --n-causal-snps 5

|--------------------------------------|
| Welcome to FINEMAP v1.4.1            |
|                                      |
| (c) 2015-2022 University of Helsinki |
|                                      |
| Help :                               |
| - ./finemap --help                   |
| - www.finemap.me                     |
| - www.christianbenner.com            |
|                                      |
| Contact :                            |
| - [email protected]        |
| - [email protected]          |
|--------------------------------------|

--------
SETTINGS
--------
- dataset            : all
- corr-config        : 0.95
- n-causal-snps      : 5
- n-configs-top      : 50000
- n-conv-sss         : 100
- n-iter             : 100000
- n-threads          : 20
- prior-k0           : 0
- prior-std          : 0.05 
- prob-conv-sss-tol  : 0.001
- prob-cred-set      : 0.95

------------
FINE-MAPPING (1/1)
------------
- GWAS summary stats               : FINEMAP/data.z
- SNP correlations                 : FINEMAP/data.ld
- Causal SNP stats                 : FINEMAP/data.snp
- Causal configurations            : FINEMAP/data.config
- Credible sets                    : FINEMAP/data.cred
- Log file                         : FINEMAP/data.log_sss
- Reading input                    : done!   

- Updated prior SD of effect sizes : 0.05 0.0517 0.0535 0.0554 

- Number of GWAS samples           : 2687
- Number of SNPs                   : 51
- Prior-Pr(# of causal SNPs is k)  : 
  (0 -> 0)
   1 -> 0.585
   2 -> 0.292
   3 -> 0.0955
   4 -> 0.0229
   5 -> 0.00431
- 1081 configurations evaluated (0.123/100%) : converged after 123 iterations
- Computing causal SNP statistics  : done!   
- Regional SNP heritability        : 0.0259 (SD: 0.00368 ; 95% CI: [0.0188,0.0334])
- Log10-BF of >= one causal SNP    : 24.9
- Post-expected # of causal SNPs   : 5
- Post-Pr(# of causal SNPs is k)   : 
  (0 -> 0)
   1 -> 5.84e-22
   2 -> 1.71e-17
   3 -> 1.74e-11
   4 -> 4.56e-06
   5 -> 1
- Writing output                   : done!   
- Run time                         : 0 hours, 0 minutes, 0 seconds
1 data.cred* file(s) found in the same subfolder.
Selected file based on postPr_k: data.cred5
Importing conditional probabilities (.cred file).
No configurations were causal at PP>=0.95.
Importing marginal probabilities (.snp file).
Importing configuration probabilities (.config file).
FINEMAP was unable to identify any credible sets at PP>=0.95.
++ Credible Set SNPs identified = 0
++ Merging FINEMAP results with multi-finemap data.

+++ Multi-finemap:: SUSIE +++
Loading required namespace: Rfast
Failed with error:  'there is no package called 'Rfast''
In addition: Warning message:
In SUSIE(dat = dat, dataset_type = dataset_type, LD_matrix = LD_matrix,  :
  Install Rfast to speed up susieR even further:
   install.packages('Rfast')
Preparing sample size column (N).
Using existing 'N' column.
+ SUSIE:: sample_size=2,687
+ Subsetting LD matrix and dat to common SNPs...
Removing unnamed rows/cols
Replacing NAs with 0
+ LD_matrix = 51 SNPs.
+ dat = 51 SNPs.
+ 51 SNPs in common.
Converting obj to sparseMatrix.
+ SUSIE:: Using `susie_rss()` from susieR v0.12.27
+ SUSIE:: Extracting Credible Sets.
++ Credible Set SNPs identified = 3
++ Merging SUSIE results with multi-finemap data.

+++ Multi-finemap:: POLYFUN_SUSIE +++
PolyFun submodule already installed.
PolyFun:: Fine-mapping with method=SUSIE
PolyFun:: Using priors from mode=precomputed
Unable to find conda binary. Is Anaconda installed?Locus LRP8 complete in: 0.33 min

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 6 ▶▶▶ Postprocess data 🎁 ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Returning results as nested list.
All loci done in: 0.97 min
$`RP11-240A16.1`
NULL

$XYLT1
NULL

$LRP8
NULL

$merged_dat
Null data.table (0 rows and 0 cols)

Warning message:
In SUSIE(dat = dat, dataset_type = dataset_type, LD_matrix = LD_matrix,  :
  Install Rfast to speed up susieR even further:
   install.packages('Rfast')

Session Info

> sessionInfo()
R version 4.2.0 (2022-04-22)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 20.04.4 LTS

Matrix products: default
BLAS:   /usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3
LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/liblapack.so.3

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C               LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8     LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                  LC_ADDRESS=C               LC_TELEPHONE=C             LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] stats4    stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
 [1] SNPlocs.Hsapiens.dbSNP155.GRCh37_0.99.22 SNPlocs.Hsapiens.dbSNP144.GRCh37_0.99.20 BSgenome_1.65.2                         
 [4] rtracklayer_1.57.0                       Biostrings_2.65.3                        XVector_0.37.1                          
 [7] GenomicRanges_1.49.1                     GenomeInfoDb_1.33.5                      IRanges_2.31.2                          
[10] S4Vectors_0.35.3                         BiocGenerics_0.43.1                      forcats_0.5.2                           
[13] stringr_1.4.1                            dplyr_1.0.10                             purrr_0.3.4                             
[16] readr_2.1.2                              tidyr_1.2.0                              tibble_3.1.8                            
[19] ggplot2_3.3.6                            tidyverse_1.3.2                          data.table_1.14.2                       
[22] echolocatoR_2.0.1                       

loaded via a namespace (and not attached):
  [1] utf8_1.2.2                  reticulate_1.26             R.utils_2.12.0              tidyselect_1.1.2            RSQLite_2.2.16             
  [6] AnnotationDbi_1.59.1        htmlwidgets_1.5.4           grid_4.2.0                  BiocParallel_1.31.12        XGR_1.1.8                  
 [11] munsell_0.5.0               codetools_0.2-18            interp_1.1-3                DT_0.24                     withr_2.5.0                
 [16] colorspace_2.0-3            OrganismDbi_1.39.1          Biobase_2.57.1              filelock_1.0.2              knitr_1.40                 
 [21] supraHex_1.35.0             rstudioapi_0.14             DescTools_0.99.46           MatrixGenerics_1.9.1        GenomeInfoDbData_1.2.8     
 [26] mixsqp_0.3-43               bit64_4.0.5                 echoconda_0.99.7            basilisk_1.9.2              vctrs_0.4.1                
 [31] generics_0.1.3              xfun_0.32                   biovizBase_1.45.0           BiocFileCache_2.5.0         R6_2.5.1                   
 [36] AnnotationFilter_1.21.0     bitops_1.0-7                cachem_1.0.6                reshape_0.8.9               DelayedArray_0.23.1        
 [41] assertthat_0.2.1            BiocIO_1.7.1                scales_1.2.1                googlesheets4_1.0.1         nnet_7.3-17                
 [46] rootSolve_1.8.2.3           gtable_0.3.1                lmom_2.9                    ggbio_1.45.0                ensembldb_2.21.4           
 [51] rlang_1.0.5                 MungeSumstats_1.5.13        echodata_0.99.14            splines_4.2.0               lazyeval_0.2.2             
 [56] gargle_1.2.0                dichromat_2.0-0.1           hexbin_1.28.2               broom_1.0.1                 checkmate_2.1.0            
 [61] modelr_0.1.9                BiocManager_1.30.18         yaml_2.3.5                  reshape2_1.4.4              snpStats_1.47.1            
 [66] backports_1.4.1             GenomicFeatures_1.49.6      ggnetwork_0.5.10            Hmisc_4.7-1                 RBGL_1.73.0                
 [71] tools_4.2.0                 echoplot_0.99.5             ellipsis_0.3.2              catalogueR_1.0.0            RColorBrewer_1.1-3         
 [76] proxy_0.4-27                coloc_5.1.0                 Rcpp_1.0.9                  plyr_1.8.7                  base64enc_0.1-3            
 [81] progress_1.2.2              zlibbioc_1.43.0             RCurl_1.98-1.8              basilisk.utils_1.9.2        prettyunits_1.1.1          
 [86] rpart_4.1.16                deldir_1.0-6                viridis_0.6.2               haven_2.5.1                 cluster_2.1.3              
 [91] SummarizedExperiment_1.27.2 ggrepel_0.9.1               fs_1.5.2                    crul_1.2.0                  magrittr_2.0.3             
 [96] echotabix_0.99.8            dnet_1.1.7                  openxlsx_4.2.5              reprex_2.0.2                googledrive_2.0.0          
[101] mvtnorm_1.1-3               ProtGenerics_1.29.0         matrixStats_0.62.0          hms_1.1.2                   patchwork_1.1.2            
[106] XML_3.99-0.10               jpeg_0.1-9                  readxl_1.4.1                gridExtra_2.3               compiler_4.2.0             
[111] biomaRt_2.53.2              crayon_1.5.1                R.oo_1.25.0                 htmltools_0.5.3             echoannot_0.99.7           
[116] tzdb_0.3.0                  Formula_1.2-4               expm_0.999-6                Exact_3.1                   lubridate_1.8.0            
[121] DBI_1.1.3                   dbplyr_2.2.1                MASS_7.3-58.1               rappdirs_0.3.3              boot_1.3-28                
[126] Matrix_1.4-1                piggyback_0.1.3             cli_3.3.0                   R.methodsS3_1.8.2           echofinemap_0.99.3         
[131] parallel_4.2.0              igraph_1.3.4                pkgconfig_2.0.3             GenomicAlignments_1.33.1    dir.expiry_1.5.0           
[136] RCircos_1.2.2               foreign_0.8-82              osfr_0.2.8                  xml2_1.3.3                  rvest_1.0.3                
[141] echoLD_0.99.7               VariantAnnotation_1.43.3    digest_0.6.29               graph_1.75.0                httpcode_0.3.0             
[146] cellranger_1.1.0            htmlTable_2.4.1             gld_2.6.5                   restfulr_0.0.15             curl_4.3.2                 
[151] Rsamtools_2.13.4            rjson_0.2.21                lifecycle_1.0.1             nlme_3.1-159                jsonlite_1.8.0             
[156] viridisLite_0.4.1           fansi_1.0.3                 downloadR_0.99.4            pillar_1.8.1                susieR_0.12.27             
[161] lattice_0.20-45             GGally_2.1.2                googleAuthR_2.0.0           KEGGREST_1.37.3             fastmap_1.1.0              
[166] httr_1.4.4                  survival_3.3-1              glue_1.6.2                  zip_2.2.0                   png_0.1-7                  
[171] bit_4.0.4                   Rgraphviz_2.41.1            class_7.3-20                stringi_1.7.8               blob_1.2.3                 
[176] latticeExtra_0.6-30         memoise_2.0.1               irlba_2.3.5                 e1071_1.7-11                ape_5.6-2     

Originally posted by @AMCalejandro in RajLabMSSM/echolocatoR#114 (comment)

Allow custom annotations

Allow users to specify custom annotations when conducting functional fine-mapping.

  • PAINTOR
  • PolyFun

Error when running COJO - cojo.jma.cojo not found

Hi,

I got the following error when trying to run COJO

+++ Multi-finemap:: COJO +++
[1] "+ COJO:: conditional analysis -- Conditioning on: rs4721411"
sh: 1: /home/acarrasco/.conda/envs/echoR/lib/R/library/echolocatoR/tools/gcta_1.92.1beta5_mac/bin/gcta64: Exec format error
[1] "+ COJO:: Processing results..."
Error in data.table::fread(file.path(cojo_dir, "cojo.jma.cojo")) : 
  File '/mnt/rreal/RDS/RDS/acarrasco/ANALYSES_WORKSPACE/EARLY_PD/POST_GWAS/ECHOLOCATOR/RESULTS_23.2.2022/mixedmodels_GWAS/axial_TryingCOJO/MAD1L1/COJO/cojo.jma.cojo' does not exist or is non-readable. getwd()=='/mnt/rreal/RDS/RDS/acarrasco/ANALYSES_WORKSPACE/EARLY_PD/POST_GWAS/ECHOLOCATOR/SCRIPTS'

I was looking at the code but I am not sure in which step "cojo.jma.cojo" file is generated. Does it come from running COJO?
In that case, it may be solved with #11

Warning in utils::tar(filepath, pkgname, compression = compression, compression_level = 9L, : storing paths of more than 100 bytes is not portable:

When installing echolocatoR, you'll probably see a long list of warnings like this:

...
...
Warning in utils::tar(filepath, pkgname, compression = compression, compression_level = 9L,  :
   storing paths of more than 100 bytes is not portable:echolocatoR/inst/tools/PAINTOR_V3.0/eigen/unsupported/Eigen/src/SparseExtra/BlockOfDynamicSparseMatrix.hWarning in utils::tar(filepath, pkgname, compression = compression, compression_level = 9L,  :
   storing paths of more than 100 bytes is not portable:echolocatoR/inst/tools/goshifter/test_data/bc.H3K4me1_vHMEC_strat_Myoepithelial_Cells.nperm1000.enrich

This is coming from the fact that R doesn't like the folder naming scheme of some of the submodules echolocatoR depends on, specifically:

The only way I've come across to address this would be to fork my own version of these repos and rewrite the code so it uses a different directory structure. But this runs a very high risk of messing up these software entirely. So until I can figure out a smarter solution, we'll have to bear with loads of warning messages 😞

Sources

Integrate additional fine-mapping tools

Fine-mapping

  • ABF
  • SUSIE
  • FINEMAP
  • PolyFun-SUSIE
  • PolyFun-FINEMAP
  • PAINTOR (statistical finemapping)
  • PAINTOR_annot (finemap with annotations as priors)
  • PAINTOR_multi (jointly finemap between multiple ZSCORES)
  • PAINTOR_multiancestry (finemap different multiple LD refs across multiple ZSCORES)
  • ANNORE
  • JLIM
  • CAFEH
  • INFIMA
  • SparsePro

Colocalization/genetic correlation

Preprocessing/outlier detection

  • COJO_stepwise
  • COJO_conditional
  • COJO_joint
  • SLALOM

Error using gcta64 within echoR conda environment. -> gcta64: Exec format error

The full error message happens when trying to execute gcta64 bin within the conda environment

+++ Multi-finemap:: COJO +++
[1] "+ COJO:: conditional analysis -- Conditioning on: rs4721411"
sh: 1: /home/acarrasco/.conda/envs/echoR/lib/R/library/echolocatoR/tools/gcta_1.92.1beta5_mac/bin/gcta64: Exec format error
[1] "+ COJO:: Processing results..."

I believe the way to download gcta64 assumes you are running COJO on a MAC by looking at the path to the exec. I am running echolocatoR on Linux and it fails when trying to use the COJO from gcta64

I am not sure where I can finf this bug reallyu. It is easy to solve locally ( Just copying the gcta64 bin for Linux within .bin/ conda env but maybe nice to automate it on echolocatoR. As if, specifying the OS where echolocatoR is used

FINEMAP credible sets not included in the results

While exploring the results in the echolocatoR Shiny app, I noticed that FINEMAP never returns more than 1 credible set per locus. This was confusing since SuSiE often returns more than 1 credible set.

I started diving into the code, and I think the issue is that it only looks for data.cred, when FINEMAP returns data.cred# where # is the number of credible sets. PolyFun obtains the credible sets by searching backwards from the maximum number of causal SNPs until it finds a .cred file (source):

        #add causal set info
        df_finemap['CREDIBLE_SET'] = 0
        cred_file = None
        for m in range(num_causal_snps, 0, -1):
            if os.path.exists(cred_filename+str(m)):
                cred_file = cred_filename+str(m)
                break
        if cred_file is None:
            raise IOError('cred file not found')
        df_cred = pd.read_table(cred_file, sep=' ', usecols=(lambda c: c.startswith('cred')), comment='#')
        df_finemap.set_index('SNP', inplace=True, drop=False)
        for c_i, c in enumerate(df_cred.columns):
            df_finemap.loc[df_cred[c].dropna(), 'CREDIBLE_SET'] = c_i+1
        df_finemap.reset_index(inplace=True, drop=True)

echolocatoR only checks for data.cred:

https://github.com/RajLabMSSM/echolocatoR/blob/b055ac0fb74c914d7600e3afc650a2ffd7149396/R/FINEMAP.R#L336

And then when it is extracting the PIPs from the .snp file, it assigns any SNP that meets the PIP threshold to CS 1.

https://github.com/RajLabMSSM/echolocatoR/blob/b055ac0fb74c914d7600e3afc650a2ffd7149396/R/FINEMAP.R#L363-L364

I attempted to put together a minimal, reproducible example to demonstrate this behavior. However, using the latest version on master, FINEMAP is currently returning NA for both the .CS and the .PP columns.

See here for minimal, reproducible example
library(echolocatoR)
stopifnot(packageVersion("echolocatoR") == "0.1.2")

data("Nalls_top_SNPs")
top_SNPs <- import_topSNPs(
  topSS = Nalls_top_SNPs,
  position_col = "BP",
  pval_col = "P, all studies",
  effect_col = "Beta, all studies",
  gene_col = "Nearest Gene",
  locus_col = "Nearest Gene",
  remove_variants = "rs34637584"
)
fullSS_path <- example_fullSS()

Nalls23andMe_2019.results <- finemap_loci(
  top_SNPs = top_SNPs,
  results_dir = file.path(getwd(), "results"),
  loci = "BST1",
  dataset_name = "Nalls23andMe_2019",
  remove_tmps = FALSE,
  fullSS_path = fullSS_path,
  query_by = "tabix",
  snp_col = "RSID",
  pval_col = "p",
  effect_col = "beta",
  stderr_col = "se",
  freq_col = "freq",
  MAF_col = "calculate",
  bp_distance = 10000,
  min_MAF = 0.001,
  finemap_methods = c("FINEMAP", "SUSIE"),
  LD_reference = "UKB",
  download_method = "axel",
  plot.types = c()
)

Nalls23andMe_2019.results[SUSIE.CS > 0, list(SNP, FINEMAP.CS, FINEMAP.PP, SUSIE.CS, SUSIE.PP)]
readLines("results/GWAS/Nalls23andMe_2019/BST1/FINEMAP/data.snp", n = 3)
readLines("results/GWAS/Nalls23andMe_2019/BST1/FINEMAP/data.cred5")

sessionInfo()
See here for the results
> source("reprex.R", echo = TRUE)

> library(echolocatoR)
Registered S3 method overwritten by 'GGally':
  method from
  +.gg   ggplot2
Possible Ensembl SSL connectivity problems detected.
Please see the 'Connection Troubleshooting' section of the biomaRt vignette
vignette('accessing_ensembl', package = 'biomaRt')Error in curl::curl_fetch_memory(url, handle = handle) :
  SSL certificate problem: self signed certificate in certificate chain

Bioconductor version 3.12 (BiocManager 1.30.12), ?BiocManager::install for help

> stopifnot(packageVersion("echolocatoR") == "0.1.2")

> data("Nalls_top_SNPs")

> top_SNPs <- import_topSNPs(
+   topSS = Nalls_top_SNPs,
+   position_col = "BP",
+   pval_col = "P, all studies",
+   effect_col = "Beta, all studie ..." ... [TRUNCATED]
[1] "+ Assigning gene_col and locus_col independently"

> fullSS_path <- example_fullSS()

> Nalls23andMe_2019.results <- finemap_loci(
+   top_SNPs = top_SNPs,
+   results_dir = file.path(getwd(), "results"),
+   loci = "BST1",
+   dataset_ .... [TRUNCATED]
[1] "+ CONDA:: Activating conda env 'echoR'"
[1] "Checking for tabix installation..."
[1] "Checking for bcftools installation..."

)   )  ) ))))))}}}}}}}} {{{{{{{{{(((((( (  (   (
BST1 (1 / 1)
)   )  ) ))))))}}}}}}}} {{{{{{{{{(((((( (  (   (
[1] "+ Extracting relevant variants from fullSS..."
[1] "+ Query Method: tabix"
[1] "+ QUERY: Chromosome = 4 ; Min position = 15727348 ; Max position = 15747348"
[1] "TABIX:: Converting full summary stats file to tabix format for fast querying..."
[1] "+ CONDA:: Identified bgzip executable in echoR env."
[1] "( grep 'CHR' ./Nalls23andMe_2019.fullSS_subset.tsv; grep -v ^'CHR' ./Nalls23andMe_2019.fullSS_subset.tsv | sort -k1,1 -k2,2n ) | ~/mambaforge/envs/echoR/bin/bgzip -f > ~/echolocatoR/results/GWAS/Nalls23andMe_2019/Nalls23andMe_2019.fullSS_subset.tsv.gz"
[1] "+ CONDA:: Identified tabix executable in echoR env."
[1] "TABIX:: Indexing"
[1] "~/mambaforge/envs/echoR/bin/tabix -f -S 1 -s 1 -b 2 -e 2 ~/echolocatoR/results/GWAS/Nalls23andMe_2019/Nalls23andMe_2019.fullSS_subset.tsv.gz"
[1] "Determining chrom type from file header"
[1] "Chromosome format = 1"
[1] "+ CONDA:: Identified tabix executable in echoR env."
[1] "TABIX:: Extracting subset of sum stats"
[1] "+ TABIX:: ~/mambaforge/envs/echoR/bin/tabix -h ~/echolocatoR/results/GWAS/Nalls23andMe_2019/Nalls23andMe_2019.fullSS_subset.tsv.gz 4:15727348-15747348"
[1] "+ TABIX:: Returning 115 x 11 data.table"
[1] "++ Saving query ==> ~/echolocatoR/results/GWAS/Nalls23andMe_2019/BST1/BST1_Nalls23andMe_2019_subset.tsv.gz"
[1] "LD:: Standardizing summary statistics subset."
[1] "++ Preparing Gene col"
[1] "++ Preparing A1,A1 cols"
[1] "++ Preparing MAF,Freq cols"
[1] "++ Inferring MAF from frequency column..."
[1] "++ Preparing N_cases,N_controls cols"
[1] "++ Preparing `proportion_cases` col"
[1] "++ Calculating `proportion_cases`."
[1] "++ Preparing N col"
[1] "+ Preparing sample_size (N) column"
[1] "++ Computing effective sample size."
[1] "++ Preparing t-stat col"
[1] "+ Calculating t-statistic from Effect and StdErr..."
[1] "++ Assigning lead SNP"
[1] "++ Ensuring Effect, StdErr, P are numeric"
[1] "++ Ensuring 1 SNP per row"
[1] "++ Removing extra whitespace"
[1] "++ Saving subset ==> ~/echolocatoR/results/GWAS/Nalls23andMe_2019/BST1/BST1_Nalls23andMe_2019_subset.tsv.gz"
[1] "+ Extraction completed in 6.72 seconds"
[1] "+ 115 SNPs x  16 columns"
[1] "LD:: Using UK Biobank LD reference panel."
[1] "+ UKB LD file name: chr4_15000001_18000001"
[1] "+ LD:: Downloading full .gz/.npz UKB files and saving to disk."
[1] "+ CONDA:: Identified axel executable in echoR env."
[1] "+ CONDA:: Identified axel executable in echoR env."
[1] "+ LD:: load_ld() python function input: ~/echolocatoR/results/GWAS/Nalls23andMe_2019/BST1/LD/chr4_15000001_18000001"
[1] "+ LD:: Reading LD matrix into memory. This could take some time..."
~/echolocatoR/results/GWAS/Nalls23andMe_2019/BST1/LD/chr4_15000001_18000001.gz
~/echolocatoR/results/GWAS/Nalls23andMe_2019/BST1/LD/chr4_15000001_18000001.npz
Processed URL: ~/echolocatoR/results/GWAS/Nalls23andMe_2019/BST1/LD/chr4_15000001_18000001
Some other message at the end
[1] "+ Full UKB LD matrix: 20815 x 20815"
[1] "+ Full UKB LD SNP data.table: 20815 x 5"
[1] "+ LD:: Saving LD matrix ==> ~/echolocatoR/results/GWAS/Nalls23andMe_2019/BST1/LD/BST1.UKB_LD.RDS"
[1] "115 x 115 LD_matrix (sparse)"
[1] "+ FILTER:: Filtering by LD features."
[1] "FILTER:: Filtering by SNP features."
[1] "+ FILTER:: Removing SNPs with MAF < 0.001"
[1] "+ FILTER:: Post-filtered data: 115 x 16"
vvvvv-- FINEMAP --vvvvvAll required columns present.All suggested columns present.
vvvvv-- SUSIE --vvvvvAll required columns present.All suggested columns present.
[1] "++ Fine-mapping using multiple tools: FINEMAP, SUSIE"

+++ Multi-finemap:: FINEMAP +++
[1] "++ FINEMAP:: Constructing master file."
[1] "++ FINEMAP:: Constructing data.z file."
[1] "++ FINEMAP:: Constructing data.ld file."
[1] "+ Using FINEMAP v1.4"

|--------------------------------------|
| Welcome to FINEMAP v1.4              |
|                                      |
| (c) 2015-2020 University of Helsinki |
|                                      |
| Help :                               |
| - ./finemap --help                   |
| - www.finemap.me                     |
| - www.christianbenner.com            |
|                                      |
| Contact :                            |
| - christian.benner@helsinki.fi       |
| - matti.pirinen@helsinki.fi          |
|--------------------------------------|

--------
SETTINGS
--------
- dataset            : all
- corr-config        : 0.95
- n-causal-snps      : 5
- n-configs-top      : 50000
- n-conv-sss         : 100
- n-iter             : 100000
- n-threads          : 1
- prior-k0           : 0
- prior-std          : 0.05
- prob-conv-sss-tol  : 0.001
- prob-cred-set      : 0.95

------------
FINE-MAPPING (1/1)
------------
- GWAS summary stats               : FINEMAP/data.z
- SNP correlations                 : FINEMAP/data.ld
- Causal SNP stats                 : FINEMAP/data.snp
- Causal configurations            : FINEMAP/data.config
- Credible sets                    : FINEMAP/data.cred
- Log file                         : FINEMAP/data.log_sss
- Reading input                    : done!

- Number of GWAS samples           : 216621
- Number of SNPs                   : 115
- Prior-Pr(# of causal SNPs is k)  :
  (0 -> 0)
   1 -> 0.584
   2 -> 0.292
   3 -> 0.0964
   4 -> 0.0237
   5 -> 0.00461
- 1616 configurations evaluated (0.104/100%) : converged after 104 iterations
- Computing causal SNP statistics  : done!
- Regional SNP heritability        : 0.00763 (SD: 0.000422 ; 95% CI: [0.00679,0.0085])
- Log10-BF of >= one causal SNP    : 2.28e+04
- Post-expected # of causal SNPs   : 5
- Post-Pr(# of causal SNPs is k)   :
  (0 -> 0)
   1 -> 0
   2 -> 0
   3 -> 0
   4 -> 2.87e-262
   5 -> 1
- Computing credible sets          : done!
- Writing output                   : done!
- Run time                         : 0 hours, 0 minutes, 0 seconds
[1] ".cred not detected. Using .snp instead."
[1] "+ FINEMAP:: Importing prob (.snp)..."
Error in `[.data.table`(x, r, vars, with = FALSE) :
  column(s) not found: prob
[1] "++ Credible Set SNPs identified = 0"
[1] "++ Merging FINEMAP results with multi-finemap data."

+++ Multi-finemap:: SUSIE +++
[1] "+ Preparing sample_size (N) column"
[1] "+ `N` column already present in data."
[1] "+ SUSIE:: sample_size= 216621"
[1] "+ SUSIE:: max_causal = 5"
[1] "+ Subsetting LD matrix and finemap_dat to common SNPs..."
[1] "+ LD:: Removing unnamed rows/cols"
[1] "+ LD:: Replacing NAs with 0"
[1] "+ LD_matrix = 115 SNPs."
[1] "+ finemap_dat = 115 SNPs."
[1] "+ 115 SNPs in common."
[1] "+ SUSIE:: Using `susie_suff_stat()` from susieR v0.10.1"
[1] "+ SUSIE:: Extracting Credible Sets..."
[1] "++ Credible Set SNPs identified = 3"
[1] "++ Merging SUSIE results with multi-finemap data."
[1] "+ Identifying Consensus SNPs..."
[1] "++ support_thresh = 2"
[1] "++ top_CS_only=FALSE"
[1] "+ Calculating mean Posterior Probability (mean.PP)..."
[1] "+ Replacing PP==NA with 0"
[1] "++ 2 fine-mapping methods used."
[1] "++ 3 Credible Set SNPs identified."
[1] "++ 0 Consensus SNPs identified."
[1] "+ Fine-mapping with ' FINEMAP, SUSIE ' completed:"
Time difference of 3.1 secs

Fine-mapping complete in:
Time difference of 1.7 mins
[1] "+ Identifying Consensus SNPs..."
[1] "++ support_thresh = 2"
[1] "++ top_CS_only=FALSE"
[1] "+ Calculating mean Posterior Probability (mean.PP)..."
[1] "+ Replacing PP==NA with 0"
[1] "++ 2 fine-mapping methods used."
[1] "++ 3 Credible Set SNPs identified."
[1] "++ 0 Consensus SNPs identified."

> Nalls23andMe_2019.results[SUSIE.CS > 0, list(SNP, FINEMAP.CS, FINEMAP.PP, SUSIE.CS, SUSIE.PP)]
          SNP FINEMAP.CS FINEMAP.PP SUSIE.CS  SUSIE.PP
1: rs34559912         NA         NA        3 1.0000000
2:  rs4389574         NA         NA        1 1.0000000
3:  rs6852450         NA         NA        2 0.9999992

> readLines("results/GWAS/Nalls23andMe_2019/BST1/FINEMAP/data.snp", n = 3)
[1] "index rsid chromosome position allele1 allele2 maf beta se z prob log10bf mean sd mean_incl sd_incl"
[2] "1 rs6828144 4 15727389 T C 0.0263 0.1765 0.0309 5.71197 1 11.8522 1.40649 0.0355444 1.40649 0.0355444"
[3] "111 rs11947310 4 15744576 A C 0.1909 0.0823 0.012 6.85833 1 11.8522 1.40649 0.0355444 1.40649 0.0355444"

> readLines("results/GWAS/Nalls23andMe_2019/BST1/FINEMAP/data.cred5")
[1] "# Post-Pr(# of causal SNPs is 5) = 1"
[2] "#log10bf 22448.9 NA 22432.1 NA 20843.6 NA 556.379 NA 264.033 NA"
[3] "#min(|ld|) 1 NA 1 NA 1 NA 1 NA 1 NA"
[4] "#mean(|ld|) 1 NA 1 NA 1 NA 1 NA 1 NA"
[5] "#median(|ld|) 1 NA 1 NA 1 NA 1 NA 1 NA"
[6] "index cred1 prob1 cred2 prob2 cred3 prob3 cred4 prob4 cred5 prob5"
[7] "1 rs11947310 1 rs11933202 1 rs1807250 1 rs6828144 1 rs73123615 0.999999"

> sessionInfo()
R version 4.0.3 (2020-10-10)
Platform: x86_64-conda-linux-gnu (64-bit)
Running under: CentOS Linux 7 (Core)

Matrix products: default
BLAS/LAPACK: ~/mambaforge/envs/echoR/lib/libopenblasp-r0.3.12.so

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C
 [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C
 [9] LC_ADDRESS=C               LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

other attached packages:
[1] echolocatoR_0.1.2

loaded via a namespace (and not attached):
  [1] colorspace_2.0-0            ellipsis_0.3.1
  [3] class_7.3-18                biovizBase_1.38.0
  [5] htmlTable_2.1.0             XVector_0.30.0
  [7] GenomicRanges_1.42.0        base64enc_0.1-3
  [9] gld_2.6.2                   dichromat_2.0-0
 [11] rstudioapi_0.13             proxy_0.4-25
 [13] DT_0.17                     bit64_4.0.5
 [15] AnnotationDbi_1.52.0        fansi_0.4.2
 [17] mvtnorm_1.1-1               xml2_1.3.2
 [19] R.methodsS3_1.8.1           splines_4.0.3
 [21] ggbio_1.38.0                cachem_1.0.4
 [23] rootSolve_1.8.2.1           knitr_1.31
 [25] jsonlite_1.7.2              Formula_1.2-4
 [27] Rsamtools_2.6.0             dbplyr_2.1.1
 [29] cluster_2.1.1               R.oo_1.24.0
 [31] png_0.1-7                   graph_1.68.0
 [33] BiocManager_1.30.12         compiler_4.0.3
 [35] httr_1.4.2                  backports_1.2.1
 [37] assertthat_0.2.1            Matrix_1.3-2
 [39] fastmap_1.1.0               lazyeval_0.2.2
 [41] htmltools_0.5.1.1           prettyunits_1.1.1
 [43] tools_4.0.3                 gtable_0.3.0
 [45] glue_1.4.2                  lmom_2.8
 [47] GenomeInfoDbData_1.2.4      reshape2_1.4.4
 [49] dplyr_1.0.5                 rappdirs_0.3.3
 [51] Rcpp_1.0.6                  Biobase_2.50.0
 [53] vctrs_0.3.7                 Biostrings_2.58.0
 [55] rtracklayer_1.50.0          crosstalk_1.1.1
 [57] xfun_0.20                   stringr_1.4.0
 [59] lifecycle_1.0.0             ensembldb_2.14.0
 [61] XML_3.99-0.6                zlibbioc_1.36.0
 [63] MASS_7.3-53.1               scales_1.1.1
 [65] BSgenome_1.58.0             VariantAnnotation_1.36.0
 [67] ProtGenerics_1.22.0         hms_1.0.0
 [69] MatrixGenerics_1.2.1        RBGL_1.66.0
 [71] parallel_4.0.3              SummarizedExperiment_1.20.0
 [73] expm_0.999-6                susieR_0.10.1
 [75] AnnotationFilter_1.14.0     RColorBrewer_1.1-2
 [77] curl_4.3                    Exact_2.1
 [79] reticulate_1.18             memoise_2.0.0
 [81] gridExtra_2.3               ggplot2_3.3.3
 [83] biomaRt_2.46.3              rpart_4.1-15
 [85] reshape_0.8.8               latticeExtra_0.6-29
 [87] stringi_1.5.3               RSQLite_2.2.5
 [89] S4Vectors_0.28.1            e1071_1.7-6
 [91] checkmate_2.0.0             GenomicFeatures_1.42.2
 [93] BiocGenerics_0.36.0         boot_1.3-27
 [95] BiocParallel_1.24.1         GenomeInfoDb_1.26.4
 [97] rlang_0.4.10                pkgconfig_2.0.3
 [99] matrixStats_0.58.0          bitops_1.0-6
[101] lattice_0.20-41             purrr_0.3.4
[103] GenomicAlignments_1.26.0    htmlwidgets_1.5.3
[105] bit_4.0.4                   tidyselect_1.1.0
[107] GGally_2.1.1                plyr_1.8.6
[109] magrittr_2.0.1              R6_2.5.0
[111] IRanges_2.24.1              DescTools_0.99.40
[113] generics_0.1.0              Hmisc_4.5-0
[115] DelayedArray_0.16.3         DBI_1.1.1
[117] pillar_1.5.1                foreign_0.8-81
[119] survival_3.2-10             RCurl_1.98-1.3
[121] nnet_7.3-15                 tibble_3.1.0
[123] crayon_1.4.1                utf8_1.2.1
[125] OrganismDbi_1.32.0          BiocFileCache_1.14.0
[127] jpeg_0.1-8.1                progress_1.2.2
[129] grid_4.0.3                  data.table_1.14.0
[131] blob_1.2.1                  digest_0.6.27
[133] R.utils_2.10.1              openssl_1.4.3
[135] stats4_4.0.3                munsell_0.5.0
[137] askpass_1.1
Warning message:
In susie_func(bhat = subset_DT$Effect, shat = subset_DT$StdErr,  :
  IBSS algorithm did not converge in 100 iterations!

finemap_loci failing

1. Bug description

Hi I am unable to properly run finemap_loci with a quantitative GWAS.

Few things to highlight so far.

  • The sample size column to do finemapping for a quant GWAS is not properly found even though specifying case_control = FALSE.
  • Need to have a look at all of this. However, the standardised query seems wrong. Too few SNPs... I manueally filtered SNPs +-1Mb from lead variant. I had over 80K SNPs in eac loci.
  • Rfast missing in MAGMA.Celltyping

2. Reproducible example

Code

columnsnames = echodata::construct_colmap(munged= FALSE,
                                          CHR = "CHR", POS = "POS", 
                                          SNP = "SNP", P = "P",
                                          Effect = "BETA", StdErr = "SE", 
                                          A1 = "A1", A2 = "A2",
                                          N_cases = "N_CAS", MAF = "FREQ",
                                          tstat = NULL, N_controls = NULL, 
                                          proportion_cases = NULL)


finemap_loci(# GENERAL ARGUMENTS 
                                          topSNPs = topSNPs,
                                          results_dir = fullRS_path,
                                          loci = topSNPs$Locus,
                                          dataset_name = "LID_COX",
                                          dataset_type = "GWAS",  
                                          force_new_subset = TRUE,
                                          force_new_LD = FALSE,
                                          force_new_finemap = TRUE,
                                          remove_tmps = FALSE,
                                          
                                          finemap_methods = c("ABF","FINEMAP","SUSIE", "POLYFUN_SUSIE"),
                                          
                                          # Munge full sumstats first
                                          munged = FALSE,
                                          colmap = columnsnames,
                                          # SUMMARY STATS ARGUMENTS
                                          fullSS_path = newSS_name,
                                          fullSS_genome_build = "hg19",
                                          query_by ="tabix",


                                          bp_distance = 10000,#500000*2,
                                          min_MAF = 0.001, 
                                          trim_gene_limits = FALSE,
                                          
                                          
                                          case_control = FALSE,
                                          
                                          
                                         
                                          # FINE-MAPPING ARGUMENTS
                                          ## General
                                          n_causal = 5,
                                          credset_thresh = .95,
                                          consensus_thresh = 2,
                                         

                                          # LD ARGUMENTS 
                                          LD_reference = "1KGphase3",#"UKB",
                                          superpopulation = "EUR",
                                          download_method = "axel",
                                          LD_genome_build = "hg19",
                                          leadSNP_LD_block = FALSE,
                                         
                                          #### PLotting args ####
                                          plot_types = c("simple"),
                                          show_plot = TRUE,
                                          zoom = "1x",
                                          tx_biotypes = NULL,
                                          nott_epigenome = FALSE,
                                          nott_show_placseq = FALSE,
                                          nott_binwidth = 200,
                                          nott_bigwig_dir = NULL,
                                          xgr_libnames = NULL,
                                          roadmap = FALSE,
                                          roadmap_query = NULL,
                                          
                                          #### General args ####
                                          seed = 2022,
                                          nThread = 20,
                                          verbose = TRUE
                                          )

Console output


PolyFun submodule already installed.
┌─────────────────────────────────────────────────┐
│                                                 │
│   )))> 🦇 RP11-240A16.1 [locus 1 / 3] 🦇 <(((   │
│                                                 │
└─────────────────────────────────────────────────┘

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 1 ▶▶▶ Query 🔎 ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
+ Query Method: tabix
Constructing GRanges query using min/max ranges within a single chromosome.
query_dat is already a GRanges object. Returning directly.
========= echotabix::convert =========
Converting full summary stats file to tabix format for fast querying.
Inferred format: 'table'
Explicit format: 'table'
Inferring comment_char from tabular header: 'CHR'
Determining chrom type from file header.
Chromosome format: 1
Detecting column delimiter.
Identified column separator: \t
Sorting rows by coordinates via bash.
Searching for header row with grep.
( grep ^'CHR' .../QC_V2.txt; grep
    -v ^'CHR' .../QC_V2.txt | sort
    -k1,1n
    -k2,2n ) > .../file2efc11009c2a_sorted.tsv
Constructing outputs
Using existing bgzipped file: /home/rstudio/echolocatoR/echolocatoR_LID/QC_V2.txt.bgz 
Set force_new=TRUE to override this.
Tabix-indexing file using: Rsamtools
Data successfully converted to bgzip-compressed, tabix-indexed format.
========= echotabix::query =========
query_dat is already a GRanges object. Returning directly.
Inferred format: 'table'
Querying tabular tabix file using: Rsamtools.
Checking query chromosome style is correct.
Chromosome format: 1
Retrieving data.
Converting query results to data.table.
Processing query: 4:32425284-32445284
Adding 'query' column to results.
Retrieved data with 76 rows
Saving query ==> /home/rstudio/echolocatoR/echolocatoR_LID/RESULTS/GWAS/LID_COX/RP11-240A16.1/RP11-240A16.1_LID_COX_subset.tsv.gz
+ Query: 76 SNPs x 10 columns.
Standardizing summary statistics subset.
Standardizing main column names.
++ Preparing A1,A1 cols
++ Preparing MAF,Freq cols.
++ Could not infer MAF.
++ Preparing N_cases,N_controls cols.
++ Preparing proportion_cases col.
++ proportion_cases not included in data subset.
Preparing sample size column (N).
WARNING: Neff column could not be calculated as the columns N_CAS & N_CON were not found in the datset
+ Mapping colnames from MungeSumstats ==> echolocatoR
+ Imputing t-statistic from Effect and StdErr.
+ leadSNP missing. Assigning new one by min p-value.
++ Ensuring Effect,StdErr,P are numeric.
++ Ensuring 1 SNP per row and per genomic coordinate.
++ Removing extra whitespace
+ Standardized query: 76 SNPs x 12 columns.
++ Saving standardized query ==> /home/rstudio/echolocatoR/echolocatoR_LID/RESULTS/GWAS/LID_COX/RP11-240A16.1/RP11-240A16.1_LID_COX_subset.tsv.gz

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 2 ▶▶▶ Extract Linkage Disequilibrium 🔗 ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
LD_reference identified as: 1kg.
Previously computed LD_matrix detected. Importing: /home/rstudio/echolocatoR/echolocatoR_LID/RESULTS/GWAS/LID_COX/RP11-240A16.1/LD/RP11-240A16.1.1KGphase3_LD.RDS
LD_reference identified as: r.
Converting obj to sparseMatrix.
+ FILTER:: Filtering by LD features.

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 3 ▶▶▶ Filter SNPs 🚰 ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
FILTER:: Filtering by SNP features.
+ FILTER:: Post-filtered data: 76 x 12
+ Subsetting LD matrix and dat to common SNPs...
Removing unnamed rows/cols
Replacing NAs with 0
+ LD_matrix = 76 SNPs.
+ dat = 76 SNPs.
+ 76 SNPs in common.
Converting obj to sparseMatrix.

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 4 ▶▶▶ Fine-map 🔊 ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Gathering method sources.
Gathering method citations.
Preparing sample size column (N).
WARNING: Neff column could not be calculated as the columns N_CAS & N_CON were not found in the datset
+ Mapping colnames from MungeSumstats ==> echolocatoR
Gathering method sources.
Gathering method citations.
Gathering method sources.
Gathering method citations.
ABF
🚫 Missing required column(s) for ABF [skipping]: N, MAF, proportion_cases
FINEMAP
✅ All required columns present.
⚠ Missing optional column(s) for FINEMAP: MAF, N
SUSIE
✅ All required columns present.
⚠ Missing optional column(s) for SUSIE: N
POLYFUN_SUSIE
✅ All required columns present.
⚠ Missing optional column(s) for POLYFUN_SUSIE: MAF, N
++ Fine-mapping using 3 tool(s): FINEMAP, SUSIE, POLYFUN_SUSIE

+++ Multi-finemap:: FINEMAP +++
Preparing sample size column (N).
WARNING: Neff column could not be calculated as the columns N_CAS & N_CON were not found in the datset
+ Mapping colnames from MungeSumstats ==> echolocatoR
+ Subsetting LD matrix and dat to common SNPs...
Removing unnamed rows/cols
Replacing NAs with 0
+ LD_matrix = 76 SNPs.
+ dat = 76 SNPs.
+ 76 SNPs in common.
Converting obj to sparseMatrix.
Constructing master file.
Optional MAF col missing. Replacing with all '.1's
Constructing data.z file.
Constructing data.ld file.
FINEMAP path: /home/rstudio/.cache/R/echofinemap/FINEMAP/finemap_v1.4.1_x86_64/finemap_v1.4.1_x86_64
Inferred FINEMAP version: 1.4.1
Running FINEMAP.
cd .../RP11-240A16.1 &&
    .../finemap_v1.4.1_x86_64
   
    --sss
   
    --in-files .../master
   
    --log
   
    --n-threads 20
   
    --n-causal-snps 5
Error : Master file '/home/rstudio/echolocatoR/echolocatoR_LID/RESULTS/GWAS/LID_COX/RP11-240A16.1/FINEMAP/master' is missing an entry in line 2 column 'n_samples'!


|--------------------------------------|
| Welcome to FINEMAP v1.4.1            |
|                                      |
| (c) 2015-2022 University of Helsinki |
|                                      |
| Help :                               |
| - ./finemap --help                   |
| - www.finemap.me                     |
| - www.christianbenner.com            |
|                                      |
| Contact :                            |
| - [email protected]        |
| - [email protected]          |
|--------------------------------------|

--------
SETTINGS
--------
- dataset            : all
- corr-config        : 0.95
- n-causal-snps      : 5
- n-configs-top      : 50000
- n-conv-sss         : 100
- n-iter             : 100000
- n-threads          : 20
- prior-k0           : 0
- prior-std          : 0.05 
- prob-conv-sss-tol  : 0.001
- prob-cred-set      : 0.95

+++ Multi-finemap:: SUSIE +++
Loading required namespace: Rfast
Failed with error:  'there is no package called 'Rfast''
Preparing sample size column (N).
WARNING: Neff column could not be calculated as the columns N_CAS & N_CON were not found in the datset
+ Mapping colnames from MungeSumstats ==> echolocatoR
sample_size=NULL: must be valid integer.Locus RP11-240A16.1 complete in: 0.26 min
┌─────────────────────────────────────────┐
│                                         │
│   )))> 🦇 XYLT1 [locus 2 / 3] 🦇 <(((   │
│                                         │
└─────────────────────────────────────────┘

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 1 ▶▶▶ Query 🔎 ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
+ Query Method: tabix
Constructing GRanges query using min/max ranges within a single chromosome.
query_dat is already a GRanges object. Returning directly.
========= echotabix::convert =========
Converting full summary stats file to tabix format for fast querying.
Inferred format: 'table'
Explicit format: 'table'
Inferring comment_char from tabular header: 'CHR'
Determining chrom type from file header.
Chromosome format: 1
Detecting column delimiter.
Identified column separator: \t
Sorting rows by coordinates via bash.
Searching for header row with grep.
( grep ^'CHR' .../QC_V2.txt; grep
    -v ^'CHR' .../QC_V2.txt | sort
    -k1,1n
    -k2,2n ) > .../file2efc3ee606a8_sorted.tsv
Constructing outputs
Using existing bgzipped file: /home/rstudio/echolocatoR/echolocatoR_LID/QC_V2.txt.bgz 
Set force_new=TRUE to override this.
Tabix-indexing file using: Rsamtools
Data successfully converted to bgzip-compressed, tabix-indexed format.
========= echotabix::query =========
query_dat is already a GRanges object. Returning directly.
Inferred format: 'table'
Querying tabular tabix file using: Rsamtools.
Checking query chromosome style is correct.
Chromosome format: 1
Retrieving data.
Converting query results to data.table.
Processing query: 16:17034975-17054975
Adding 'query' column to results.
Retrieved data with 82 rows
Saving query ==> /home/rstudio/echolocatoR/echolocatoR_LID/RESULTS/GWAS/LID_COX/XYLT1/XYLT1_LID_COX_subset.tsv.gz
+ Query: 82 SNPs x 10 columns.
Standardizing summary statistics subset.
Standardizing main column names.
++ Preparing A1,A1 cols
++ Preparing MAF,Freq cols.
++ Could not infer MAF.
++ Preparing N_cases,N_controls cols.
++ Preparing proportion_cases col.
++ proportion_cases not included in data subset.
Preparing sample size column (N).
WARNING: Neff column could not be calculated as the columns N_CAS & N_CON were not found in the datset
+ Mapping colnames from MungeSumstats ==> echolocatoR
+ Imputing t-statistic from Effect and StdErr.
+ leadSNP missing. Assigning new one by min p-value.
++ Ensuring Effect,StdErr,P are numeric.
++ Ensuring 1 SNP per row and per genomic coordinate.
++ Removing extra whitespace
+ Standardized query: 80 SNPs x 12 columns.
++ Saving standardized query ==> /home/rstudio/echolocatoR/echolocatoR_LID/RESULTS/GWAS/LID_COX/XYLT1/XYLT1_LID_COX_subset.tsv.gz

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 2 ▶▶▶ Extract Linkage Disequilibrium 🔗 ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
LD_reference identified as: 1kg.
Previously computed LD_matrix detected. Importing: /home/rstudio/echolocatoR/echolocatoR_LID/RESULTS/GWAS/LID_COX/XYLT1/LD/XYLT1.1KGphase3_LD.RDS
LD_reference identified as: r.
Converting obj to sparseMatrix.
+ FILTER:: Filtering by LD features.

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 3 ▶▶▶ Filter SNPs 🚰 ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
FILTER:: Filtering by SNP features.
+ FILTER:: Post-filtered data: 79 x 12
+ Subsetting LD matrix and dat to common SNPs...
Removing unnamed rows/cols
Replacing NAs with 0
+ LD_matrix = 79 SNPs.
+ dat = 79 SNPs.
+ 79 SNPs in common.
Converting obj to sparseMatrix.

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 4 ▶▶▶ Fine-map 🔊 ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Gathering method sources.
Gathering method citations.
Preparing sample size column (N).
WARNING: Neff column could not be calculated as the columns N_CAS & N_CON were not found in the datset
+ Mapping colnames from MungeSumstats ==> echolocatoR
Gathering method sources.
Gathering method citations.
Gathering method sources.
Gathering method citations.
ABF
🚫 Missing required column(s) for ABF [skipping]: N, MAF, proportion_cases
FINEMAP
✅ All required columns present.
⚠ Missing optional column(s) for FINEMAP: MAF, N
SUSIE
✅ All required columns present.
⚠ Missing optional column(s) for SUSIE: N
POLYFUN_SUSIE
✅ All required columns present.
⚠ Missing optional column(s) for POLYFUN_SUSIE: MAF, N
++ Fine-mapping using 3 tool(s): FINEMAP, SUSIE, POLYFUN_SUSIE

+++ Multi-finemap:: FINEMAP +++
Preparing sample size column (N).
WARNING: Neff column could not be calculated as the columns N_CAS & N_CON were not found in the datset
+ Mapping colnames from MungeSumstats ==> echolocatoR
+ Subsetting LD matrix and dat to common SNPs...
Removing unnamed rows/cols
Replacing NAs with 0
+ LD_matrix = 79 SNPs.
+ dat = 79 SNPs.
+ 79 SNPs in common.
Converting obj to sparseMatrix.
Constructing master file.
Optional MAF col missing. Replacing with all '.1's
Constructing data.z file.
Constructing data.ld file.
FINEMAP path: /home/rstudio/.cache/R/echofinemap/FINEMAP/finemap_v1.4.1_x86_64/finemap_v1.4.1_x86_64
Inferred FINEMAP version: 1.4.1
Running FINEMAP.
cd .../XYLT1 &&
    .../finemap_v1.4.1_x86_64
   
    --sss
   
    --in-files .../master
   
    --log
   
    --n-threads 20
   
    --n-causal-snps 5
Error : Master file '/home/rstudio/echolocatoR/echolocatoR_LID/RESULTS/GWAS/LID_COX/XYLT1/FINEMAP/master' is missing an entry in line 2 column 'n_samples'!


|--------------------------------------|
| Welcome to FINEMAP v1.4.1            |
|                                      |
| (c) 2015-2022 University of Helsinki |
|                                      |
| Help :                               |
| - ./finemap --help                   |
| - www.finemap.me                     |
| - www.christianbenner.com            |
|                                      |
| Contact :                            |
| - [email protected]        |
| - [email protected]          |
|--------------------------------------|

--------
SETTINGS
--------
- dataset            : all
- corr-config        : 0.95
- n-causal-snps      : 5
- n-configs-top      : 50000
- n-conv-sss         : 100
- n-iter             : 100000
- n-threads          : 20
- prior-k0           : 0
- prior-std          : 0.05 
- prob-conv-sss-tol  : 0.001
- prob-cred-set      : 0.95

+++ Multi-finemap:: SUSIE +++
Loading required namespace: Rfast
Failed with error:  'there is no package called 'Rfast''
In addition: Warning message:
In SUSIE(dat = dat, dataset_type = dataset_type, LD_matrix = LD_matrix,  :
  Install Rfast to speed up susieR even further:
   install.packages('Rfast')
Preparing sample size column (N).
WARNING: Neff column could not be calculated as the columns N_CAS & N_CON were not found in the datset
+ Mapping colnames from MungeSumstats ==> echolocatoR
sample_size=NULL: must be valid integer.Locus XYLT1 complete in: 0.3 min
┌────────────────────────────────────────┐
│                                        │
│   )))> 🦇 LRP8 [locus 3 / 3] 🦇 <(((   │
│                                        │
└────────────────────────────────────────┘

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 1 ▶▶▶ Query 🔎 ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
+ Query Method: tabix
Constructing GRanges query using min/max ranges within a single chromosome.
query_dat is already a GRanges object. Returning directly.
========= echotabix::convert =========
Converting full summary stats file to tabix format for fast querying.
Inferred format: 'table'
Explicit format: 'table'
Inferring comment_char from tabular header: 'CHR'
Determining chrom type from file header.
Chromosome format: 1
Detecting column delimiter.
Identified column separator: \t
Sorting rows by coordinates via bash.
Searching for header row with grep.
( grep ^'CHR' .../QC_V2.txt; grep
    -v ^'CHR' .../QC_V2.txt | sort
    -k1,1n
    -k2,2n ) > .../file2efc33368771_sorted.tsv
Constructing outputs
Using existing bgzipped file: /home/rstudio/echolocatoR/echolocatoR_LID/QC_V2.txt.bgz 
Set force_new=TRUE to override this.
Tabix-indexing file using: Rsamtools
Data successfully converted to bgzip-compressed, tabix-indexed format.
========= echotabix::query =========
query_dat is already a GRanges object. Returning directly.
Inferred format: 'table'
Querying tabular tabix file using: Rsamtools.
Checking query chromosome style is correct.
Chromosome format: 1
Retrieving data.
Converting query results to data.table.
Processing query: 1:53768300-53788300
Adding 'query' column to results.
Retrieved data with 52 rows
Saving query ==> /home/rstudio/echolocatoR/echolocatoR_LID/RESULTS/GWAS/LID_COX/LRP8/LRP8_LID_COX_subset.tsv.gz
+ Query: 52 SNPs x 10 columns.
Standardizing summary statistics subset.
Standardizing main column names.
++ Preparing A1,A1 cols
++ Preparing MAF,Freq cols.
++ Could not infer MAF.
++ Preparing N_cases,N_controls cols.
++ Preparing proportion_cases col.
++ proportion_cases not included in data subset.
Preparing sample size column (N).
WARNING: Neff column could not be calculated as the columns N_CAS & N_CON were not found in the datset
+ Mapping colnames from MungeSumstats ==> echolocatoR
+ Imputing t-statistic from Effect and StdErr.
+ leadSNP missing. Assigning new one by min p-value.
++ Ensuring Effect,StdErr,P are numeric.
++ Ensuring 1 SNP per row and per genomic coordinate.
++ Removing extra whitespace
+ Standardized query: 52 SNPs x 12 columns.
++ Saving standardized query ==> /home/rstudio/echolocatoR/echolocatoR_LID/RESULTS/GWAS/LID_COX/LRP8/LRP8_LID_COX_subset.tsv.gz

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 2 ▶▶▶ Extract Linkage Disequilibrium 🔗 ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
LD_reference identified as: 1kg.
Previously computed LD_matrix detected. Importing: /home/rstudio/echolocatoR/echolocatoR_LID/RESULTS/GWAS/LID_COX/LRP8/LD/LRP8.1KGphase3_LD.RDS
LD_reference identified as: r.
Converting obj to sparseMatrix.
+ FILTER:: Filtering by LD features.

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 3 ▶▶▶ Filter SNPs 🚰 ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
FILTER:: Filtering by SNP features.
+ FILTER:: Post-filtered data: 51 x 12
+ Subsetting LD matrix and dat to common SNPs...
Removing unnamed rows/cols
Replacing NAs with 0
+ LD_matrix = 51 SNPs.
+ dat = 51 SNPs.
+ 51 SNPs in common.
Converting obj to sparseMatrix.

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 4 ▶▶▶ Fine-map 🔊 ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Gathering method sources.
Gathering method citations.
Preparing sample size column (N).
WARNING: Neff column could not be calculated as the columns N_CAS & N_CON were not found in the datset
+ Mapping colnames from MungeSumstats ==> echolocatoR
Gathering method sources.
Gathering method citations.
Gathering method sources.
Gathering method citations.
ABF
🚫 Missing required column(s) for ABF [skipping]: N, MAF, proportion_cases
FINEMAP
✅ All required columns present.
⚠ Missing optional column(s) for FINEMAP: MAF, N
SUSIE
✅ All required columns present.
⚠ Missing optional column(s) for SUSIE: N
POLYFUN_SUSIE
✅ All required columns present.
⚠ Missing optional column(s) for POLYFUN_SUSIE: MAF, N
++ Fine-mapping using 3 tool(s): FINEMAP, SUSIE, POLYFUN_SUSIE

+++ Multi-finemap:: FINEMAP +++
Preparing sample size column (N).
WARNING: Neff column could not be calculated as the columns N_CAS & N_CON were not found in the datset
+ Mapping colnames from MungeSumstats ==> echolocatoR
+ Subsetting LD matrix and dat to common SNPs...
Removing unnamed rows/cols
Replacing NAs with 0
+ LD_matrix = 51 SNPs.
+ dat = 51 SNPs.
+ 51 SNPs in common.
Converting obj to sparseMatrix.
Constructing master file.
Optional MAF col missing. Replacing with all '.1's
Constructing data.z file.
Constructing data.ld file.
FINEMAP path: /home/rstudio/.cache/R/echofinemap/FINEMAP/finemap_v1.4.1_x86_64/finemap_v1.4.1_x86_64
Inferred FINEMAP version: 1.4.1
Running FINEMAP.
cd .../LRP8 &&
    .../finemap_v1.4.1_x86_64
   
    --sss
   
    --in-files .../master
   
    --log
   
    --n-threads 20
   
    --n-causal-snps 5
Error : Master file '/home/rstudio/echolocatoR/echolocatoR_LID/RESULTS/GWAS/LID_COX/LRP8/FINEMAP/master' is missing an entry in line 2 column 'n_samples'!


|--------------------------------------|
| Welcome to FINEMAP v1.4.1            |
|                                      |
| (c) 2015-2022 University of Helsinki |
|                                      |
| Help :                               |
| - ./finemap --help                   |
| - www.finemap.me                     |
| - www.christianbenner.com            |
|                                      |
| Contact :                            |
| - [email protected]        |
| - [email protected]          |
|--------------------------------------|

--------
SETTINGS
--------
- dataset            : all
- corr-config        : 0.95
- n-causal-snps      : 5
- n-configs-top      : 50000
- n-conv-sss         : 100
- n-iter             : 100000
- n-threads          : 20
- prior-k0           : 0
- prior-std          : 0.05 
- prob-conv-sss-tol  : 0.001
- prob-cred-set      : 0.95

+++ Multi-finemap:: SUSIE +++
Loading required namespace: Rfast
Failed with error:  'there is no package called 'Rfast''
In addition: Warning message:
In SUSIE(dat = dat, dataset_type = dataset_type, LD_matrix = LD_matrix,  :
  Install Rfast to speed up susieR even further:
   install.packages('Rfast')
Preparing sample size column (N).
WARNING: Neff column could not be calculated as the columns N_CAS & N_CON were not found in the datset
+ Mapping colnames from MungeSumstats ==> echolocatoR
sample_size=NULL: must be valid integer.Locus LRP8 complete in: 0.26 min

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

── Step 6 ▶▶▶ Postprocess data 🎁 ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Returning results as nested list.
All loci done in: 0.81 min
$`RP11-240A16.1`
NULL

$XYLT1
NULL

$LRP8
NULL

$merged_dat
Null data.table (0 rows and 0 cols)

Warning message:
In SUSIE(dat = dat, dataset_type = dataset_type, LD_matrix = LD_matrix,  :
  Install Rfast to speed up susieR even further:
   install.packages('Rfast')

Data

> head(data_2)
   CHR     BP         SNP A1 A2   FREQ    BETA     SE      P N_CAS
1:   1 731718  rs58276399  t  c 0.8837 -0.1775 0.1583 0.2621  1297
2:   1 731718 rs142557973  t  c 0.8837 -0.1775 0.1583 0.2621  1297
3:   1 734349 rs141242758  t  c 0.8843 -0.1577 0.1593 0.3223  1297
4:   1 753541   rs2073813  a  g 0.1257  0.0721 0.1177 0.5399  2687
5:   1 766007  rs61768174  a  c 0.9005 -0.2559 0.1642 0.1190  1297
6:   1 769223  rs60320384  c  g 0.8749 -0.0772 0.1178 0.5124  2687


> head(topSNPs)
# A tibble: 3 × 7
  Locus         Gene          CHR        POS SNP                     P  BETA
  <chr>         <chr>         <fct>    <int> <chr>               <dbl> <dbl>
1 RP11-240A16.1 RP11-240A16.1 4     32435284 rs189093213 0.00000000167  1.12
2 XYLT1         XYLT1         16    17044975 rs180924818 0.00000000626 -1.14
3 LRP8          LRP8          1     53778300 rs72673189  0.0000000153   1.02

3. Session info

> sessionInfo()
R version 4.2.0 (2022-04-22)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 20.04.4 LTS

Matrix products: default
BLAS:   /usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3
LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/liblapack.so.3

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C               LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8     LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                  LC_ADDRESS=C               LC_TELEPHONE=C             LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] stats4    stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
 [1] SNPlocs.Hsapiens.dbSNP144.GRCh37_0.99.20 BSgenome_1.65.2                          rtracklayer_1.57.0                      
 [4] Biostrings_2.65.3                        XVector_0.37.1                           GenomicRanges_1.49.1                    
 [7] GenomeInfoDb_1.33.5                      IRanges_2.31.2                           S4Vectors_0.35.3                        
[10] BiocGenerics_0.43.1                      forcats_0.5.2                            stringr_1.4.1                           
[13] dplyr_1.0.10                             purrr_0.3.4                              readr_2.1.2                             
[16] tidyr_1.2.0                              tibble_3.1.8                             ggplot2_3.3.6                           
[19] tidyverse_1.3.2                          data.table_1.14.2                        echolocatoR_2.0.1                       

loaded via a namespace (and not attached):
  [1] Hmisc_4.7-1                                 class_7.3-20                                ps_1.7.1                                   
  [4] Rsamtools_2.13.4                            rprojroot_2.0.3                             echotabix_0.99.8                           
  [7] crayon_1.5.1                                MASS_7.3-58.1                               nlme_3.1-159                               
 [10] backports_1.4.1                             reprex_2.0.2                                basilisk_1.9.2                             
 [13] rlang_1.0.5                                 readxl_1.4.1                                irlba_2.3.5                                
 [16] nloptr_2.0.3                                callr_3.7.2                                 limma_3.53.6                               
 [19] filelock_1.0.2                              proto_1.0.0                                 BiocParallel_1.31.12                       
 [22] rjson_0.2.21                                bit64_4.0.5                                 glue_1.6.2                                 
 [25] mixsqp_0.3-43                               parallel_4.2.0                              processx_3.7.0                             
 [28] AnnotationDbi_1.59.1                        HGNChelper_0.8.1                            haven_2.5.1                                
 [31] tidyselect_1.1.2                            SummarizedExperiment_1.27.2                 coloc_5.1.0                                
 [34] usethis_2.1.6                               XML_3.99-0.10                               ggpubr_0.4.0                               
 [37] GenomicAlignments_1.33.1                    catalogueR_1.0.0                            echoplot_0.99.5                            
 [40] chron_2.3-57                                xtable_1.8-4                                ggnetwork_0.5.10                           
 [43] magrittr_2.0.3                              evaluate_0.16                               cli_3.3.0                                  
 [46] zlibbioc_1.43.0                             rstudioapi_0.14                             miniUI_0.1.1.1                             
 [49] rpart_4.1.16                                echoannot_0.99.7                            ensembldb_2.21.4                           
 [52] treeio_1.21.2                               shiny_1.7.2                                 xfun_0.32                                  
 [55] BSgenome.Hsapiens.1000genomes.hs37d5_0.99.1 pkgbuild_1.3.1                              cluster_2.1.3                              
 [58] echoconda_0.99.7                            KEGGREST_1.37.3                             interactiveDisplayBase_1.35.0              
 [61] expm_0.999-6                                ggrepel_0.9.1                               SNPlocs.Hsapiens.dbSNP155.GRCh37_0.99.22   
 [64] biovizBase_1.45.0                           ape_5.6-2                                   echodata_0.99.12                           
 [67] png_0.1-7                                   reshape_0.8.9                               withr_2.5.0                                
 [70] bitops_1.0-7                                RBGL_1.73.0                                 plyr_1.8.7                                 
 [73] cellranger_1.1.0                            AnnotationFilter_1.21.0                     e1071_1.7-11                               
 [76] pillar_1.8.1                                cachem_1.0.6                                GenomicFeatures_1.49.6                     
 [79] fs_1.5.2                                    googleAuthR_2.0.0                           echoLD_0.99.7                              
 [82] osfr_0.2.8                                  snpStats_1.47.1                             vctrs_0.4.1                                
 [85] ellipsis_0.3.2                              generics_0.1.3                              gsubfn_0.7                                 
 [88] devtools_2.4.4                              tools_4.2.0                                 foreign_0.8-82                             
 [91] munsell_0.5.0                               susieR_0.12.27                              proxy_0.4-27                               
 [94] DelayedArray_0.23.1                         abind_1.4-5                                 fastmap_1.1.0                              
 [97] compiler_4.2.0                              pkgload_1.3.0                               httpuv_1.6.5                               
[100] ExperimentHub_2.5.0                         sessioninfo_1.2.2                           ewceData_1.5.0                             
[103] plotly_4.10.0                               DescTools_0.99.46                           GenomeInfoDbData_1.2.8                     
[106] gridExtra_2.3                               lattice_0.20-45                             dir.expiry_1.5.0                           
[109] deldir_1.0-6                                utf8_1.2.2                                  later_1.3.0                                
[112] BiocFileCache_2.5.0                         jsonlite_1.8.0                              GGally_2.1.2                               
[115] scales_1.2.1                                gld_2.6.5                                   graph_1.75.0                               
[118] tidytree_0.4.0                              carData_3.0-5                               lazyeval_0.2.2                             
[121] promises_1.2.0.1                            car_3.1-0                                   RCircos_1.2.2                              
[124] latticeExtra_0.6-30                         R.utils_2.12.0                              reticulate_1.26                            
[127] checkmate_2.1.0                             rmarkdown_2.16                              openxlsx_4.2.5                             
[130] dichromat_2.0-0.1                           Biobase_2.57.1                              igraph_1.3.4                               
[133] survival_3.3-1                              yaml_2.3.5                                  htmltools_0.5.3                            
[136] memoise_2.0.1                               VariantAnnotation_1.43.3                    profvis_0.3.7                              
[139] BiocIO_1.7.1                                supraHex_1.35.0                             viridisLite_0.4.1                          
[142] digest_0.6.29                               assertthat_0.2.1                            mime_0.12                                  
[145] piggyback_0.1.3                             rappdirs_0.3.3                              dnet_1.1.7                                 
[148] downloadR_0.99.4                            RSQLite_2.2.16                              sqldf_0.4-11                               
[151] yulab.utils_0.0.5                           Exact_3.1                                   remotes_2.4.2                              
[154] orthogene_1.3.2                             urlchecker_1.0.1                            blob_1.2.3                                 
[157] R.oo_1.25.0                                 splines_4.2.0                               Formula_1.2-4                              
[160] googledrive_2.0.0                           AnnotationHub_3.5.0                         OrganismDbi_1.39.1                         
[163] ProtGenerics_1.29.0                         RCurl_1.98-1.8                              broom_1.0.1                                
[166] hms_1.1.2                                   gprofiler2_0.2.1                            modelr_0.1.9                               
[169] colorspace_2.0-3                            base64enc_0.1-3                             BiocManager_1.30.18                        
[172] aplot_0.1.6                                 echofinemap_0.99.3                          nnet_7.3-17                                
[175] Rcpp_1.0.9                                  mvtnorm_1.1-3                               fansi_1.0.3                                
[178] tzdb_0.3.0                                  brio_1.1.3                                  R6_2.5.1                                   
[181] grid_4.2.0                                  crul_1.2.0                                  lifecycle_1.0.1                            
[184] rootSolve_1.8.2.3                           zip_2.2.0                                   MungeSumstats_1.5.13                       
[187] ggsignif_0.6.3                              curl_4.3.2                                  googlesheets4_1.0.1                        
[190] minqa_1.2.4                                 testthat_3.1.4                              XGR_1.1.8                                  
[193] Matrix_1.4-1                                desc_1.4.1                                  ggbio_1.45.0                               
[196] RColorBrewer_1.1-3                          htmlwidgets_1.5.4                           biomaRt_2.53.2                             
[199] gridGraphics_0.5-1                          MAGMA.Celltyping_2.0.7                      rvest_1.0.3                                
[202] lmom_2.9                                    htmlTable_2.4.1                             patchwork_1.1.2                            
[205] codetools_0.2-18                            matrixStats_0.62.0                          lubridate_1.8.0                            
[208] EWCE_1.5.7                                  prettyunits_1.1.1                           SingleCellExperiment_1.19.0                
[211] dbplyr_2.2.1                                basilisk.utils_1.9.2                        R.methodsS3_1.8.2                          
[214] gtable_0.3.1                                DBI_1.1.3                                   ggfun_0.0.7                                
[217] httr_1.4.4                                  stringi_1.7.8                               progress_1.2.2                             
[220] reshape2_1.4.4                              viridis_0.6.2                               hexbin_1.28.2                              
[223] Rgraphviz_2.41.1                            ggtree_3.5.3                                DT_0.24                                    
[226] xml2_1.3.3                                  ggdendro_0.1.23                             boot_1.3-28                                
[229] lme4_1.1-30                                 restfulr_0.0.15                             RNOmni_1.0.1                               
[232] interp_1.1-3                                ggplotify_0.1.0                             homologene_1.4.68.19.3.27                  
[235] BiocVersion_3.16.0                          bit_4.0.4                                   jpeg_0.1-9                                 
[238] MatrixGenerics_1.9.1                        babelgene_22.3                              pkgconfig_2.0.3                            
[241] gargle_1.2.0                                rstatix_0.7.0                               knitr_1.40       

Make sure polyfun submodule gets installed

The polyfun repo is not getting included in "inst/tools" when installing echofinemap.
This is because the submodule is being interpreted as an empty folder by R:
https://stackoverflow.com/questions/50474445/how-could-i-release-an-r-package-on-github-using-github-submodules

Suggested solution with packrat:
https://blog.methodsconsultants.com/posts/using-packrat-with-git-submodules/

Discussion on devtools:
r-lib/devtools#1163
r-lib/devtools#1222

git2r package:
https://github.com/ropensci/git2r

This function seems promising:
r-lib/devtools#751 (comment)

Check whether fine-mapping method is compatible for quantitative vs. case-control sumstats

Some fine-mapping tools are designed only for case-control studies (e.g GWAS) and can produce biased results if applied with quantitative traits (e.g. height) without further adjustments.

Currently, only ABF() takes the case_control argument. But this should be applied to all other methods where this distinction can be applied. For methods that are unable to handle quantitative traits in an unbiased way, a warning message should be produced letting users know about this. This checking can occur within the check_required_cols() function, which will need an additional argument: case_control

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.