LDSC: Could not open Corces_ATAC_1000Gv3_ldscores/Corces_ATAC.1.1.l2.ldscore[./gz/bz2]

运行以下脚本时出现的报错IOError: Could not open Corces_ATAC_1000Gv3_ldscores/Corces_ATAC.1.1.l2.ldscore[./gz/bz2]

ldsc.py \
    --h2-cts UKBB_BMI.sumstats.gz \
    --ref-ld-chr 1000G_EUR_Phase3_baseline/baseline. \
    --out BMI_Corces_ATAC \
    --ref-ld-chr-cts /ldsc/data/Corces_ATAC.ldcts \
    --w-ld-chr weights_hm3_no_hla/weights.

解决方案,指定 Corces_ATAC_1000Gv3_ldscores 文件夹的绝对路径,比如这里 Corces_ATAC_1000Gv3_ldscores 文件夹存储在/ldsc/data,那么可以修改成如下所示:

cd /ldsc/data
ldsc.py \
    --h2-cts UKBB_BMI.sumstats.gz \
    --ref-ld-chr 1000G_EUR_Phase3_baseline/baseline. \
    --out BMI_Corces_ATAC \
    --ref-ld-chr-cts /ldsc/data/Corces_ATAC.ldcts \
    --w-ld-chr weights_hm3_no_hla/weights.

可以理解为这是ldsc的一个bug。ldsc内部需要调用Corces_ATAC_1000Gv3_ldscores/Corces_ATAC.1.1.l2.ldscore数据,但是在官方提供的脚本里没有这么一个参数指定Corces_ATAC_1000Gv3_ldscores/Corces_ATAC.1.1.l2.ldscore数据,导致运行的时候找不到这个数据。
因此,只需要在运行前加上cd /ldsc/data这么一个参数就行了。

posted @ 2022-12-03 17:52  橙子牛奶糖  阅读(218)  评论(0编辑  收藏  举报