Giter VIP home page Giter VIP logo

ordinalgwas.jl's Introduction

OrdinalGWAS

Documentation Build Status Code Coverage
build Actions Status Coverage Status codecov

OrdinalGWAS.jl is a Julia package for performing genome-wide association studies (GWAS) for ordered categorical phenotypes. It is useful when the phenotype takes ordered discrete values, e.g., disease status (undiagnosed, pre-disease, mild, moderate, severe). It runs efficiently and scales well to very large datasets. The package currently supports PLINK, VCF (both dosage and genotype data) file formats, and BGEN file formats. We plan to add PGEN support in the future.

OrdinalGWAS.jl supports Julia v1.6 or later. See the documentation for usage.

OrdinalGWAS.jl needs the following steps to install.

using Pkg
pkg"add OrdinalGWAS"

Citation

The methods and applications of this software package are detailed in the following publication:

German CA, Sinsheimer JS, Klimentidis YC, Zhou H, Zhou JJ. Ordered multinomial regression for genetic association analysis of ordinal phenotypes at Biobank scale. Genet Epidemiol. 2020 Apr;44(3):248-260. doi: 10.1002/gepi.22276. Epub 2019 Dec 26. PMID: 31879980; PMCID: PMC8256450.

If you use OpenMendel analysis packages in your research, please cite the following reference in the resulting publications:

Zhou H, Sinsheimer JS, Bates DM, Chu BB, German CA, Ji SS, Keys KL, Kim J, Ko S, Mosher GD, Papp JC, Sobel EM, Zhai J, Zhou JJ, Lange K. OPENMENDEL: a cooperative programming project for statistical genetics. Hum Genet. 2020 Jan;139(1):61-71. doi: 10.1007/s00439-019-02001-z. Epub 2019 Mar 26. PMID: 30915546; PMCID: PMC6763373.

Acknowledgments

This project has been supported by the National Institutes of Health under awards R01GM053275, R01HG006139, R25GM103774, and 1R25HG011845.

ordinalgwas.jl's People

Contributors

chris-german avatar hua-zhou avatar jcpapp avatar jinjinzhou avatar kose-y avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

ordinalgwas.jl's Issues

Analysis code

I appreciate this wonderful resource.
I have questions about specifying snpmodel and output analysis results.

1. specifying snpmodel
I wanted to analyze with a dominant model, so I entered
[using OrdinalGWAS
ordinalgwas(@formula(phenotype ~ covariate), phenotype-data , genotype-data; geneticformat = "VCF", vcftype = :GT, snpmodel = "DOMINANT_MODEL", pvalfile="pval.txt.gz")"]
and got the following error message;
[TypeError: in keyword argument snpmodel, expected Union{Val{1}, Val{2}, Val{3}}, got a value of type String].

Val(1), Val(2), and Val(3) mean additive, dominant, and recessive model, respectively?

2. details of the analysis results
What code should I enter to output the odds ratio and the 95% Confidence interval?

It is my first time to using Julia, sorry for the basic questions. I look forward to your reply.

TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.

If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.

If you'd like for me to do this for you, comment TagBot fix on this issue.
I'll open a PR within a few hours, please be patient!

tested allele in LRT

Hi there,

I was wondering in LRT test, the effect size is tested upon REF allele in bim file or the allele with minor allele frequency?
Thanks!

Best, Song

update CI.yml in GitHub actions

CI testing in CI.yml is assuming some OpenMendel packages are unregistered.

      - run: | # add unregistered packages first
          julia --project=docs -e '
            using Pkg
            pkg"add https://github.com/OpenMendel/SnpArrays.jl"
            pkg"add https://github.com/OpenMendel/VCFTools.jl"
            pkg"add https://github.com/OpenMendel/BGEN.jl"
            pkg"add https://github.com/OpenMendel/OrdinalMultinomialModels.jl"
            pkg"add https://github.com/OpenMendel/OrdinalGWAS.jl"'

They are not needed anymore, since all these packages are registered?

SNP set tests

Would be useful to have a SNPs set tests implemented.

test data for proportional odds assumption

Hi there,

Actually, I have some questions about the statistical method in this tool and your paper(DOI: 10.1002/gepi.22276). I hope it is okay to just post here.

  1. In your paper, the first analysis is done by using simulated data, which is generated by proportional odds assumption. So for later analysis using COPDGene or UKB, did you also check whether these data follow proportional odds assumption before performing analysis? Do we also need to check this for our own data? Or it is okay to just run the ordinal analysis directly because it is difficult to check proportional odds assumption for real data and adding several covariates and large sample size may break the proportional odds assumption.

  2. I am quite a newbie in statistics, I am lost in the math part of your paper. please forgive me for this silly question. Is the statistical model in your tool the same as proportional odds model? Are there any differences?

Best,
Song

Have row mask filter out covariate file

Using the rowinds argument that filters the SNP data, it may be useful to also use it to filter out the covariate file so that the user does not have to create a separate covariate file that excludes missing data indices.

Documentation Note 2

Again thank you SO much for this tool. I just wanted to note another inconsitency I found in the documentation to help other new users.

In the installation section, https://openmendel.github.io/OrdinalGWAS.jl/stable/#Installation , you have the following line:

# for use in this tutorial
using BenchmarkTools, CSV, Glob, SnpArrays, OrdinalGWAS, DataFrames

For me to run the tutorial I needed StatsModel. Maybe add StatsModel into the list or with a Pkg.add()

Thanks for everything!

support for imputed data

Hi,

Thanks for this nice package.
I wonder whether this only supports for best-guess data in .bed format. Does it also support for imputed data containing dosage information. like .bgen or .pgen?

Best

Documentation Note 1

Hello, Thank you for this FANTASTIC resource!!

I just wanted to make a note about a [potential ?] error I found in your documentation at https://openmendel.github.io/OrdinalGWAS.jl/stable/#Basic-usage

You give three lines of code to check that individual names match between phenotype and genotype files match - great idea.
Your tutorial code:
covdf = CSV.read(datadir * "covariate.txt", DataFrame)
plkfam = CSV.read(datadir * "hapmap3.fam", header=0, delim=' ', DataFrame)
all(covdf[!, 1] .== plkfam[!, 1]) && all(covdf[!, 2] .== plkfam[!, 2])

However fam files may be separated by tab delimeter, causing the statement to yeild FALSE. You may want to change your code accordingly to help users :)
covdf = CSV.read(datadir * "covariate.txt", DataFrame)
plkfam = CSV.read(datadir * "hapmap3.fam", header=0, delim='\t', DataFrame)
all(covdf[!, 1] .== plkfam[!, 1]) && all(covdf[!, 2] .== plkfam[!, 2])

VCF input

PolrGWAS should be able to take input in VCF format, besides Plink bed files.

Specifying null model w/out covariates?

I'm interested in using OrdinalGWAS to simply fit the ordinal regression on SNPs withoutout additional covariates. What's the right way to specify the null model in this case when calling the ordinalgwas function?

I tried creating a dummy "sex" covariate (with all samples set to have the same value), but unsurprisingly this raises an error if the covariate is non-variable.

ERROR: DomainError with -8.497357787491502e13: sqrt will only return a complex result if called with a complex argument. Try sqrt(Complex(x)).

Hello. I succesfully run all my phenotypes without LRT option. However when I add the test:LRT, I get the following error with some of the phenotypes (I have like 76 traits and half of them runs without error with LRT option).

julia> ordinalgwas(@formula(y14 ~ Q1 + Q2),"imputed_core_phenotype.csv", "gen2", geneticformat= "BGEN", test=:LRT, nullfile="y14.null.txt", pvalfile="y14.pval.txt")
ERROR: DomainError with -8.497357787491502e13:
sqrt will only return a complex result if called with a complex argument. Try sqrt(Complex(x)).
Stacktrace:
  [1] throw_complex_domainerror(f::Symbol, x::Float64)
    @ Base.Math .\math.jl:33
  [2] sqrt
    @ .\math.jl:582 [inlined]
  [3] _broadcast_getindex_evalf
    @ .\broadcast.jl:648 [inlined]
  [4] _broadcast_getindex
    @ .\broadcast.jl:621 [inlined]
  [5] getindex
    @ .\broadcast.jl:575 [inlined]
  [6] macro expansion
    @ .\broadcast.jl:984 [inlined]
  [7] macro expansion
    @ .\simdloop.jl:77 [inlined]
  [8] copyto!
    @ .\broadcast.jl:983 [inlined]
  [9] copyto!
    @ .\broadcast.jl:936 [inlined]
 [10] copy
    @ .\broadcast.jl:908 [inlined]
 [11] materialize
    @ .\broadcast.jl:883 [inlined]
 [12] stderror(m::OrdinalMultinomialModel{Int64, Float64, LogitLink})
    @ OrdinalMultinomialModels C:\Users\Corbeau\.julia\packages\OrdinalMultinomialModels\fWajC\src\OrdinalMultinomialModels.jl:157
 [13] (::OrdinalGWAS.var"#41#47"{FormulaTerm{ContinuousTerm{Float64}, Term}, Symbol, UnitRange{Int64}, NLoptSolver, StatsModels.TableRegressionModel{OrdinalMultinomialModel{Int64, Float64, LogitLink}, Matrix{Float64}}, Bool, DataFrames.DataFrame, BGEN.VariantIteratorFromStart, BGEN.Bgen})(io::IOStream)
    @ OrdinalGWAS C:\Users\Corbeau\.julia\packages\OrdinalGWAS\g7QpK\src\gwas.jl:1102
 [14] makestream(::OrdinalGWAS.var"#41#47"{FormulaTerm{ContinuousTerm{Float64}, Term}, Symbol, UnitRange{Int64}, NLoptSolver, StatsModels.TableRegressionModel{OrdinalMultinomialModel{Int64, Float64, LogitLink}, Matrix{Float64}}, Bool, DataFrames.DataFrame, BGEN.VariantIteratorFromStart, BGEN.Bgen}, ::String, ::Vararg{String, N} where N)
    @ SnpArrays C:\Users\Corbeau\.julia\packages\SnpArrays\pDgJb\src\codec.jl:31
 [15] ordinalgwas(fittednullmodel::StatsModels.TableRegressionModel{OrdinalMultinomialModel{Int64, Float64, LogitLink}, Matrix{Float64}}, bgenfile::String, nsamples::Int64; analysistype::String, testformula::FormulaTerm{ContinuousTerm{Float64}, Term}, test::Symbol, pvalfile::String, snpmodel::Val{1}, snpinds::Nothing, bgenrowinds::UnitRange{Int64}, solver::NLoptSolver, verbose::Bool, snpset::Nothing, e::Nothing)
    @ OrdinalGWAS C:\Users\Corbeau\.julia\packages\OrdinalGWAS\g7QpK\src\gwas.jl:1052
 [16] ordinalgwas(fittednullmodel::StatsModels.TableRegressionModel{OrdinalMultinomialModel{Int64, Float64, LogitLink}, Matrix{Float64}}, geneticfile::String; analysistype::String, geneticformat::String, vcftype::Nothing, testformula::FormulaTerm{ContinuousTerm{Float64}, Term}, test::Symbol, pvalfile::String, snpmodel::Val{1}, snpinds::Nothing, geneticrowinds::Nothing, solver::NLoptSolver, verbose::Bool, snpset::Nothing, e::Nothing)
    @ OrdinalGWAS C:\Users\Corbeau\.julia\packages\OrdinalGWAS\g7QpK\src\gwas.jl:231
 [17] ordinalgwas(nullformula::FormulaTerm{Term, Tuple{Term, Term}}, nulldf::DataFrames.DataFrame, geneticfile::String; nullfile::String, link::LogitLink, solver::NLoptSolver, verbose::Bool, kwargs::Base.Iterators.Pairs{Symbol, Any, Tuple{Symbol, Symbol, Symbol}, NamedTuple{(:geneticformat, :test, :pvalfile), Tuple{String, Symbol, String}}})
    @ OrdinalGWAS C:\Users\Corbeau\.julia\packages\OrdinalGWAS\g7QpK\src\gwas.jl:126
 [18] #ordinalgwas#3
    @ C:\Users\Corbeau\.julia\packages\OrdinalGWAS\g7QpK\src\gwas.jl:105 [inlined]
 [19] top-level scope
    @ REPL[5]:1

julia>

ERROR: AssertionError: decompressed length mismatch

Hi,
Thank you for creating this wonderful tool!
I encountered this error when using bgen for ordinal gwas.

ERROR: AssertionError: decompressed length mismatch

My BGEN file was converted from VCF using qctool. I also tried using PLINK2 to convert vcf to bgen. But the ordinalgwas gave the same error when using these BGEN files converted from qctool or plink2.

The BGEN file in your example data folder works for me. Then I tried converting the BGEN file in your example data folder using plink2 to bgen-1.1/1.2/1.3. Same errors occur if I use the converted BGEN.

So I think the problem might be related to the BGEN format? Any advice would be appreciated!

Thanks,
Keren

Print out ref/alt allele

Feature requested via email. The output file does not have information to determine the allele the effect estimate references.

categorical cavariates data

Hi Chris,

I have included 18 covariates (including 10 PC) in the null model. When categorical data in covfile is presented as numerical, like sex in (1,2). I will get error like this

โ”Œ Warning: Optimization unsuccesful; got UserLimit
โ”” @ OrdinalMultinomialModels ~/.julia/packages/OrdinalMultinomialModels/fWajC/src/ordmnfit.jl:209
StatsModels.TableRegressionModel{OrdinalMultinomialModel{Int64,Float64,LogitLink},Array{Float64,2}}

If I transform categorical data in covfile is as character, like sex in ('F','M'), then no error comes out.
So, I assume we better use character for categorical covariates?

Best,
Song

Syntax of covrowinds and geneticrowinds

As a follow-up to my last issue, it's quite cumbersome to construct VCF or BED files for each phenotype separately, so the best way to go on would be probably to use the covrowinds and geneticrowinds argument to select only the samples used in the current analysis. As I'm by no means an expert in Julia, how would one go on to implement this, similar to the snpinds argument which works very nicely. Is there any easy way to construct the covrowinds and geneticrowinds using IDs of participants? Or does one have to construct the indices manually? What is the syntax of the indices?`
Any pointers on this would be highly appreciated

VCF file input

Hello. When I try to run the software with vcf file input. I get the following error.

julia> using OrdinalGWAS

julia> const datadir = normpath(joinpath(dirname(pathof(OrdinalGWAS)), "../data/"))
"C:\\Users\\Corbeau\\.julia\\packages\\OrdinalGWAS\\g7QpK\\data\\"

julia> ordinalgwas(@formula(y ~ sex), datadir * "vcf_example.csv",
           datadir * "vcf_test"; geneticformat = "VCF", vcftype = :DS)
ERROR: MethodError: no method matching copy_ds!(::Vector{Union{Missing, Float64}}, ::GeneticVariation.VCF.Reader; model=:additive, impute=true, record_chr=Any[#undef], record_pos=Any[#undef], record_ids=Any[#undef])
Closest candidates are:
  copy_ds!(::Union{AbstractArray{Union{Missing, T}, 1}, AbstractArray{Union{Missing, T}, 2}}, ::VariantCallFormat.Reader; key, model, impute, center, scale, msg, sampleID, record_chr, record_pos, record_ids, record_ref, record_alt) where T<:Real at C:\Users\Corbeau\.julia\packages\VCFTools\F07kI\src\convert.jl:651
Stacktrace:
 [1] WARNING: both OrdinalMultinomialModels and Distributions export "cor"; uses of it in module OrdinalGWAS must be qualified
WARNING: both OrdinalMultinomialModels and Distributions export "loglikelihood"; uses of it in module OrdinalGWAS must be qualified
(::OrdinalGWAS.var"#28#34"{FormulaTerm{ContinuousTerm{Float64}, Term}, Symbol, Symbol, UnitRange{Int64}, NLoptSolver, StatsModels.TableRegressionModel{OrdinalMultinomialModel{Int64, Float64, LogitLink}, Matrix{Float64}}, Symbol, Bool, DataFrames.DataFrame, GeneticVariation.VCF.Reader})(io::IOStream)
   @ OrdinalGWAS C:\Users\Corbeau\.julia\packages\OrdinalGWAS\g7QpK\src\gwas.jl:707
 [2] makestream(::OrdinalGWAS.var"#28#34"{FormulaTerm{ContinuousTerm{Float64}, Term}, Symbol, Symbol, UnitRange{Int64}, NLoptSolver, StatsModels.TableRegressionModel{OrdinalMultinomialModel{Int64, Float64, LogitLink}, Matrix{Float64}}, Symbol, Bool, DataFrames.DataFrame, GeneticVariation.VCF.Reader}, ::String, ::Vararg{String, N} where N)
   @ SnpArrays C:\Users\Corbeau\.julia\packages\SnpArrays\pDgJb\src\codec.jl:31
 [3] ordinalgwas(fittednullmodel::StatsModels.TableRegressionModel{OrdinalMultinomialModel{Int64, Float64, LogitLink}, Matrix{Float64}}, vcffile::String, nsamples::Int64, vcftype::Symbol; analysistype::String, testformula::FormulaTerm{ContinuousTerm{Float64}, Term}, test::Symbol, pvalfile::String, snpmodel::Val{1}, snpinds::Nothing, vcfrowinds::UnitRange{Int64}, solver::NLoptSolver, verbose::Bool, snpset::Nothing, e::Nothing)
   @ OrdinalGWAS C:\Users\Corbeau\.julia\packages\OrdinalGWAS\g7QpK\src\gwas.jl:678
 [4] ordinalgwas(fittednullmodel::StatsModels.TableRegressionModel{OrdinalMultinomialModel{Int64, Float64, LogitLink}, Matrix{Float64}}, geneticfile::String; analysistype::String, geneticformat::String, vcftype::Symbol, testformula::FormulaTerm{ContinuousTerm{Float64}, Term}, test::Symbol, pvalfile::String, snpmodel::Val{1}, snpinds::Nothing, geneticrowinds::Nothing, solver::NLoptSolver, verbose::Bool, snpset::Nothing, e::Nothing)
   @ OrdinalGWAS C:\Users\Corbeau\.julia\packages\OrdinalGWAS\g7QpK\src\gwas.jl:218
 [5] ordinalgwas(nullformula::FormulaTerm{Term, Term}, nulldf::DataFrames.DataFrame, geneticfile::String; nullfile::String, link::LogitLink, solver::NLoptSolver, verbose::Bool, kwargs::Base.Iterators.Pairs{Symbol, Any, Tuple{Symbol, Symbol}, NamedTuple{(:geneticformat, :vcftype), Tuple{String, Symbol}}})
   @ OrdinalGWAS C:\Users\Corbeau\.julia\packages\OrdinalGWAS\g7QpK\src\gwas.jl:126
 [6] #ordinalgwas#3
   @ C:\Users\Corbeau\.julia\packages\OrdinalGWAS\g7QpK\src\gwas.jl:105 [inlined]
 [7] top-level scope
   @ REPL[4]:1

julia>

covariate dataset

Hi,

Thank you for the wonderful package. Is there any way to add population structure and kinship matrix as covariate?

Thanks

VCF file with imputed data

Dear team,

very useful method that I'm running already for genotyped data, but also wanted to run on VCF files containing imputed data.
When running the command (Julia 1.8.5):

ordinalgwas(@formula(trait ~ sex), datadir * "pheno.txt", gendir * "chr22",pvalfile="chr22"; geneticformat = "VCF", vcftype = :DS)

I get the following error message

ERROR: MethodError: no method matching isless(::Int64, ::Nothing)
Closest candidates are:
  isless(::Integer, ::ForwardDiff.Dual{Ty}) where Ty at ~/.julia/packages/ForwardDiff/QdStj/src/dual.jl:145
  isless(::Integer, ::Result) at ~/.julia/packages/NLopt/OIUOZ/src/NLopt.jl:81
  isless(::Real, ::Static.StaticInteger{Y}) where Y at ~/.julia/packages/Static/Ldb7F/src/Static.jl:456
  ...
Stacktrace:
  [1] <(x::Int64, y::Nothing)
    @ Base ./operators.jl:356
  [2] >(x::Nothing, y::Int64)
    @ Base ./operators.jl:382
  [3] copy_ds!(A::Vector{Union{Missing, Float64}}, reader::VariantCallFormat.Reader; key::String, model::Symbol, impute::Bool, center::Bool, scale::Bool, msg::String, sampleID::Nothing, record_chr::Vector{Any}, record_pos::Vector{Any}, record_ids::Vector{Any}, record_ref::Nothing, record_alt::Nothing)
    @ VCFTools ~/.julia/packages/VCFTools/qtvvr/src/convert.jl:702
  [4] WARNING: both OrdinalMultinomialModels and Distributions export "cor"; uses of it in module OrdinalGWAS must be qualified
WARNING: both OrdinalMultinomialModels and Distributions export "loglikelihood"; uses of it in module OrdinalGWAS must be qualified
(::OrdinalGWAS.var"#26#32"{FormulaTerm{ContinuousTerm{Float64}, Term}, Symbol, Symbol, UnitRange{Int64}, NLopt.Optimizer, StatsModels.TableRegressionModel{OrdinalMultinomialModel{Int64, Float64, LogitLink}, Matrix{Float64}}, Symbol, Bool, DataFrame, VariantCallFormat.Reader})(io::IOStream)
    @ OrdinalGWAS ~/.julia/packages/OrdinalGWAS/azVl0/src/gwas.jl:724
  [5] makestream(::OrdinalGWAS.var"#26#32"{FormulaTerm{ContinuousTerm{Float64}, Term}, Symbol, Symbol, UnitRange{Int64}, NLopt.Optimizer, StatsModels.TableRegressionModel{OrdinalMultinomialModel{Int64, Float64, LogitLink}, Matrix{Float64}}, Symbol, Bool, DataFrame, VariantCallFormat.Reader}, ::String, ::Vararg{String})       
    @ SnpArrays ~/.julia/packages/SnpArrays/60wqu/src/codec.jl:31
  [6] ordinalgwas(fittednullmodel::StatsModels.TableRegressionModel{OrdinalMultinomialModel{Int64, Float64, LogitLink}, Matrix{Float64}}, vcffile::String, nsamples::Int64, vcftype::Symbol; analysistype::String, testformula::FormulaTerm{ContinuousTerm{Float64}, Term}, test::Symbol, pvalfile::String, snpmodel::Val{1}, snpinds::
Nothing, vcfrowinds::UnitRange{Int64}, solver::NLopt.Optimizer, solver_config::Dict{String, Any}, verbose::Bool, snpset::Nothing, e::Nothing)
    @ OrdinalGWAS ~/.julia/packages/OrdinalGWAS/azVl0/src/gwas.jl:695
  [7] ordinalgwas(fittednullmodel::StatsModels.TableRegressionModel{OrdinalMultinomialModel{Int64, Float64, LogitLink}, Matrix{Float64}}, geneticfile::String; analysistype::String, geneticformat::String, vcftype::Symbol, testformula::FormulaTerm{ContinuousTerm{Float64}, Term}, test::Symbol, pvalfile::String, snpmodel::Val{1},
 snpinds::Nothing, geneticrowinds::Nothing, solver::NLopt.Optimizer, solver_config::Dict{String, Any}, verbose::Bool, snpset::Nothing, e::Nothing)
    @ OrdinalGWAS ~/.julia/packages/OrdinalGWAS/azVl0/src/gwas.jl:228
  [8] ordinalgwas(nullformula::FormulaTerm{Term, NTuple{12, Term}}, nulldf::DataFrame, geneticfile::String; nullfile::String, link::LogitLink, solver::NLopt.Optimizer, solver_config::Dict{String, Any}, verbose::Bool, kwargs::Base.Pairs{Symbol, Any, Tuple{Symbol, Symbol, Symbol}, NamedTuple{(:pvalfile, :geneticformat, :vcftype
), Tuple{String, String, Symbol}}})
    @ OrdinalGWAS ~/.julia/packages/OrdinalGWAS/azVl0/src/gwas.jl:134
  [9] ordinalgwas(nullformula::FormulaTerm{Term, NTuple{12, Term}}, covfile::String, geneticfile::String; covtype::Nothing, covrowinds::Nothing, kwargs::Base.Pairs{Symbol, Any, Tuple{Symbol, Symbol, Symbol}, NamedTuple{(:pvalfile, :geneticformat, :vcftype), Tuple{String, String, Symbol}}})
    @ OrdinalGWAS ~/.julia/packages/OrdinalGWAS/azVl0/src/gwas.jl:112
 [10] top-level scope
    @ REPL[11]:1

The VCF file was constructed coming from a BGEN file:

plink2 --bgen chr22.bgen ref-first --sample chr22.sample --export vcf bgz vcf-dosage=DS --minimac3-r2-filter 0.5 --out chr22

Going directly to the BGEN file doesn't work, as I don't seem to be able to find the option on how to integrate the .sample file with the .bgen file in OrdinalGWAS

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.