Skip to content

VCF file with imputed data #33

@came203

Description

@came203

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions