Tchanders / NetworkInference.jl

Methods for inferring undirected networks from data
Other
43 stars 14 forks source link

Error when a gene is always zero-expressed #38

Open YazdanZ opened 2 years ago

YazdanZ commented 2 years ago

I am running PIDC using the BEELINE pipeline (Julia v1.1.0). I get the following error when a gene is zero-expressed for every cell:

6d6612190f7e:/data grnbeeline/pidc:base /bin/sh -c "time -v -o data/outputs/defpos/GSD/PIDC/time.txt julia runPIDC.jl data/inputs/defpos/GSD/PIDC/ExpressionData.csv data/outputs/defpos/GSD/PIDC/outFile.txt "
ERROR: LoadError: MethodError: no method matching setindex_shape_check(::Int64, ::Int64)
Closest candidates are:
  setindex_shape_check(!Matched::AbstractArray{#s72,1} where #s72, ::Integer) at indices.jl:218
  setindex_shape_check(!Matched::AbstractArray{#s72,1} where #s72, ::Integer, !Matched::Integer) at indices.jl:221
  setindex_shape_check(!Matched::AbstractArray{#s72,2} where #s72, ::Integer, !Matched::Integer) at indices.jl:225
  ...
Stacktrace:
 [1] macro expansion at ./multidimensional.jl:694 [inlined]
 [2] _unsafe_setindex!(::IndexLinear, ::Array{Int64,1}, ::Int64, ::UnitRange{Int64}) at ./multidimensional.jl:689
 [3] _setindex! at ./multidimensional.jl:684 [inlined]
 [4] setindex! at ./abstractarray.jl:1020 [inlined]
 [5] get_bin_ids!(::Array{Float64,1}, ::String, ::Int64, ::Array{Int64,1}) at /root/.julia/packages/InformationMeasures/fdfJk/src/Discretization.jl:111
 [6] Node(::Array{Any,2}, ::String, ::String, ::Int64) at /root/.julia/packages/NetworkInference/z8pnG/src/common.jl:32
 [7] #get_nodes#15(::Bool, ::String, ::String, ::Int64, ::Function, ::String) at /root/.julia/packages/NetworkInference/z8pnG/src/infer_network.jl:35
 [8] get_nodes(::String) at /root/.julia/packages/NetworkInference/z8pnG/src/infer_network.jl:26
 [9] top-level scope at util.jl:156
 [10] include at ./boot.jl:326 [inlined]
 [11] include_relative(::Module, ::String) at ./loading.jl:1038
 [12] include(::Module, ::String) at ./sysimg.jl:29
 [13] exec_options(::Base.JLOptions) at ./client.jl:267
 [14] _start() at ./client.jl:436

I don't think it's a problem with BEELINE but with PIDC since this is also what has been reported in #29. As soon as I change the expression of the zero-expressed gene to a value other than 0 in a single cell, the problem goes away.