compbiocore / VariantVisualization.jl

Julia package powering VIVA, our tool for visualization of genomic variation data. Manual:
https://compbiocore.github.io/VariantVisualization.jl/stable/
Other
82 stars 13 forks source link

ERROR: LoadError: ArgumentError: invalid base 10 digit '_' #113

Open mglgc opened 1 year ago

mglgc commented 1 year ago

Hi all, After a successful installation of VIVA, a simple command line such as "viva -f myfile.vcf -o output" ends with next error message:

ERROR: LoadError: ArgumentError: invalid base 10 digit '_' in "1_KI270712v1_random"

After some stacktrace lines the last output message: "in expression starting at /usr/local/bin/viva:407"

Any reply from the VIVA developers trying to fix that error will be welcome. Thank you in advance.

teacakedeadlift commented 1 year ago

I have the same issue. I think its due to how it's handling the hg38 chr1_KI270709v1_random contig and it disappears if you use -r to input a chromosome range it can handle.

However, when I do this I get either a different error as below, or if I restrict to a region with only one variant it completes but the output is blank.

viva -f 2880.filtered.vcf -o ./viva -r chr1:70000000-177000000

Welcome to VIVA.

Loading dependency packages:

┌ Warning: ORCA.jl has been deprecated and all savefig functionality
│ has been implemented directly in PlotlyBase itself.
│ 
│ By implementing in PlotlyBase.jl, the savefig routines are automatically
│ available to PlotlyJS.jl also.
└ @ ORCA ~/.julia/packages/ORCA/U5XaN/src/ORCA.jl:8
...

Finished loading packages!

Reading 2880.filtered.vcf ...

Selected 824 variants within chromosome range: chr1:70000000-177000000
ERROR: LoadError: KeyError: key "0/1/2" not found
Stacktrace:
  [1] getindex
    @ ./dict.jl:498 [inlined]
  [2] (::VariantVisualization.var"#translate#27"{Dict{Any, Any}})(c::String)
    @ VariantVisualization ~/.julia/packages/VariantVisualization/WXNGP/src/vcf_utils_complete.jl:738
  [3] iterate
    @ ./generator.jl:47 [inlined]
  [4] collect_to!(dest::Matrix{Int64}, itr::Base.Generator{Matrix{Any}, VariantVisualization.var"#translate#27"{Dict{Any, Any}}}, offs::Int64, st::Int64)
    @ Base ./array.jl:845
  [5] collect_to_with_first!(dest::Matrix{Int64}, v1::Int64, itr::Base.Generator{Matrix{Any}, VariantVisualization.var"#translate#27"{Dict{Any, Any}}}, st::Int64)
    @ Base ./array.jl:823
  [6] _collect(c::Matrix{Any}, itr::Base.Generator{Matrix{Any}, VariantVisualization.var"#translate#27"{Dict{Any, Any}}}, #unused#::Base.EltypeUnknown, isz::Base.HasShape{2})
    @ Base ./array.jl:817
  [7] collect_similar
    @ ./array.jl:716 [inlined]
  [8] map
    @ ./abstractarray.jl:2933 [inlined]
  [9] translate_genotype_to_num_array(genotype_array::Matrix{Any}, geno_dict::Dict{Any, Any})
    @ VariantVisualization ~/.julia/packages/VariantVisualization/WXNGP/src/vcf_utils_complete.jl:741
 [10] combined_all_genotype_array_functions(sub::Vector{Any})
    @ VariantVisualization ~/.julia/packages/VariantVisualization/WXNGP/src/vcf_utils_complete.jl:622
 [11] top-level scope
    @ /usr/local/bin/viva:410
in expression starting at /usr/local/bin/viva:408

Trialled with the test vcf restricting to known variants:

''' viva -f ~/.julia/packages/VariantVisualization/WXNGP/test/test_files/test_4X_191.vcf -r chr4:99541140-100694985

Welcome to VIVA.

Loading dependency packages:

┌ Warning: ORCA.jl has been deprecated and all savefig functionality │ has been implemented directly in PlotlyBase itself. │ │ By implementing in PlotlyBase.jl, the savefig routines are automatically │ available to PlotlyJS.jl also. └ @ ORCA ~/.julia/packages/ORCA/U5XaN/src/ORCA.jl:8 ...

Finished loading packages!

Reading /Users/philipelliott/.julia/packages/VariantVisualization/WXNGP/test/test_files/test_4X_191.vcf ...

Selected 300 variants within chromosome range: chr4:99541140-100694985 ERROR: LoadError: MethodError: no method matching DataFrames.DataFrame(::Type{String}, ::Int64, ::Int64) Closest candidates are: DataFrames.DataFrame(::AbstractVector{<:Type}, ::AbstractVector{<:AbstractString}, ::Integer; makeunique) at /usr/local/Caskroom/mambaforge/base/envs/maverick2/share/julia/packages/DataFrames/LteEl/src/dataframe/dataframe.jl:411 DataFrames.DataFrame(::AbstractVector{<:Type}, ::AbstractVector{Symbol}, ::Integer; makeunique) at /usr/local/Caskroom/mambaforge/base/envs/maverick2/share/julia/packages/DataFrames/LteEl/src/dataframe/dataframe.jl:405 DataFrames.DataFrame(::T; copycols) where T at /usr/local/Caskroom/mambaforge/base/envs/maverick2/share/julia/packages/DataFrames/LteEl/src/other/tables.jl:48 Stacktrace: [1] generate_genotype_array(record_sub::Vector{Any}, y::String) @ VariantVisualization ~/.julia/packages/VariantVisualization/WXNGP/src/vcf_utils_complete.jl:664 [2] combined_all_genotype_array_functions(sub::Vector{Any}) @ VariantVisualization ~/.julia/packages/VariantVisualization/WXNGP/src/vcf_utils_complete.jl:617 [3] top-level scope @ /usr/local/bin/viva:410 in expression starting at /usr/local/bin/viva:408'''

The same as error #105, so I assume it's my vcf for the first errors and my environment for the last.