kharchenkolab / Baysor

Bayesian Segmentation of Spatial Transcriptomics Data
https://kharchenkolab.github.io/Baysor/
MIT License
152 stars 31 forks source link

BAYSOR v0.6.2 ERROR: LoadError: MethodError: no method matching adjacency_list(::Vector{Any}; adjacency_type::Symbol, filter::Bool, return_tesselation::Bool) #91

Open andynkili opened 1 year ago

andynkili commented 1 year ago

Dear support,

When I tried to run the iss example data (with dapi) using the default config file provided (iss.toml), I ran into this error:

baysor run pciSeq_3-3.csv DAPI_3-3_mask.tif -c iss.toml -p -o  output/DAPI
[14:19:20] Info: Run Rdfd2acc64
[14:19:20] Info: (2023-08-23) Run Baysor v0.6.2
[14:19:20] Info: Loading data...
[14:19:28] Info: Loaded 1228540 transcripts
[14:19:35] Info: Loading segmentation mask...
[14:20:20] Info: Done
[14:20:20] Info: Estimating prior segmentation polygons...
ERROR: LoadError: MethodError: no method matching adjacency_list(::Vector{Any}; adjacency_type::Symbol, filter::Bool, return_tesselation::Bool)

Closest candidates are:
  adjacency_list(::Matrix{<:Real}; filter, n_mads, k_adj, adjacency_type, distance, return_tesselation, TD, TD)
   @ Baysor ~/.julia/packages/Baysor/XOSVt/src/processing/data_processing/triangulation.jl:49
  adjacency_list(::DataFrames.DataFrame; kwargs...)
   @ Baysor ~/.julia/packages/Baysor/XOSVt/src/processing/data_processing/triangulation.jl:107

Stacktrace:
 [1] boundary_polygons_from_grid(grid_labels::Matrix{UInt32}; grid_step::Int64)
   @ Baysor.Processing ~/.julia/packages/Baysor/XOSVt/src/processing/data_processing/boundary_estimation.jl:72
 [2] load_prior_segmentation!(df_spatial::DataFrames.DataFrame, prior_segmentation::String, opts::Baysor.Utils.SegmentationOptions; min_molecules_per_cell::Int64, min_molecules_per_segment::Int64, plot::Bool)
   @ Baysor.CommandLine ~/.julia/packages/Baysor/XOSVt/src/cli/main.jl:208
 [3] run(coordinates::String, prior_segmentation::String; config::Baysor.Utils.RunOptions, x_column::String, y_column::String, z_column::String, gene_column::String, min_molecules_per_cell::Int64, scale::Float64, scale_std::String, n_clusters::Int64, prior_segmentation_confidence::Float64, output::String, plot::Bool, save_polygons::String, no_ncv_estimation::Bool, count_matrix_format::String)
   @ Baysor.CommandLine ~/.julia/packages/Baysor/XOSVt/src/cli/main.jl:108
 [4] command_main(ARGS::Vector{String})
   @ Baysor.CommandLine ~/.julia/packages/Comonicon/HDhA6/src/codegen/julia.jl:343
 [5] command_main()
   @ Baysor.CommandLine ~/.julia/packages/Comonicon/HDhA6/src/codegen/julia.jl:90
 [6] command_main(; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
   @ Baysor ~/.julia/packages/Baysor/XOSVt/src/Baysor.jl:41
 [7] command_main()
   @ Baysor ~/.julia/packages/Baysor/XOSVt/src/Baysor.jl:41
 [8] top-level scope
   @ /usr/local/bin/baysor:15
in expression starting at /usr/local/bin/baysor:15

What is the cause of that error?

Best, Andy

andynkili commented 1 year ago

Additional information: the exact same command and data are producing also an error on version 0.6.0 error_v0 6 0 , however version 0.5.0 runs fine (complete run) v0 5 0

HaojiaWu commented 1 year ago

I came across exactly the same error when using 0.6.2. @VPetukhov any fix to this issue?

BioinfoTongLI commented 11 months ago

same here! Seems to be -p related. by removing -p, it runs. But you will have to plot the vis. yourself using the geojson file.

krademaker commented 5 months ago

I recently encountered the same issue where removing -p indeed solved the issue. Any clues on what causes this? Because it would be great to still use Baysor's output plots to inspect the segmentation and transcripts.