I am trying to get the methods in the ManifoldLearning.jl package running and get the following error messages… I use the sample code from the documentation.
# Isomap
Y_Isomap = transform(Isomap,data_array; k=12,d=2)
MethodError: no method matching Dict(::Array{Int64,1}, ::UnitRange{Int64})
Closest candidates are:
Dict(::Any) at dict.jl:144
#transform#6(::Int64, ::Int64, ::Function, ::Type{ManifoldLearning.Isomap}, ::Array{Float64,2}) at isomap.jl:59
(::MultivariateStats.#kw##transform)(::Array{Any,1}, ::MultivariateStats.#transform, ::Type{ManifoldLearning.Isomap}, ::Array{Float64,2}) at :0
include_string(::String, ::String) at loading.jl:522
include_string(::String, ::String, ::Int64) at eval.jl:30
include_string(::Module, ::String, ::String, ::Int64, ::Vararg{Int64,N} where N) at eval.jl:34
(::Atom.##100#105{String,Int64,String})() at eval.jl:75
withpath(::Atom.##100#105{String,Int64,String}, ::String) at utils.jl:30
withpath(::Function, ::String) at eval.jl:38
hideprompt(::Atom.##99#104{String,Int64,String}) at repl.jl:59
macro expansion at eval.jl:73 [inlined]
(::Atom.##98#103{Dict{String,Any}})() at task.jl:80
# Diffusion maps
Y_DiffMap = transform(DiffMap, data_array; d=2, t=1, ɛ=1.0)
UndefVarError: transform! not defined
#transform#19(::Int64, ::Int64, ::Float64, ::Function, ::Type{ManifoldLearning.DiffMap}, ::Array{Float64,2}) at diffmaps.jl:37
(::MultivariateStats.#kw##transform)(::Array{Any,1}, ::MultivariateStats.#transform, ::Type{ManifoldLearning.DiffMap}, ::Array{Float64,2}) at :0
include_string(::String, ::String) at loading.jl:522
include_string(::String, ::String, ::Int64) at eval.jl:30
include_string(::Module, ::String, ::String, ::Int64, ::Vararg{Int64,N} where N) at eval.jl:34
(::Atom.##100#105{String,Int64,String})() at eval.jl:75
withpath(::Atom.##100#105{String,Int64,String}, ::String) at utils.jl:30
withpath(::Function, ::String) at eval.jl:38
hideprompt(::Atom.##99#104{String,Int64,String}) at repl.jl:59
macro expansion at eval.jl:73 [inlined]
(::Atom.##98#103{Dict{String,Any}})() at task.jl:80
# Local linear embedding
Y_LLE = transform(LLE, data_array; k = 12, d = 2)
MethodError: no method matching Dict(::Array{Int64,1}, ::UnitRange{Int64})
Closest candidates are:
Dict(::Any) at dict.jl:144
#transform#12(::Int64, ::Int64, ::Function, ::Type{ManifoldLearning.LLE}, ::Array{Float64,2}) at lle.jl:51
(::MultivariateStats.#kw##transform)(::Array{Any,1}, ::MultivariateStats.#transform, ::Type{ManifoldLearning.LLE}, ::Array{Float64,2}) at :0
include_string(::String, ::String) at loading.jl:522
include_string(::String, ::String, ::Int64) at eval.jl:30
include_string(::Module, ::String, ::String, ::Int64, ::Vararg{Int64,N} where N) at eval.jl:34
(::Atom.##100#105{String,Int64,String})() at eval.jl:75
withpath(::Atom.##100#105{String,Int64,String}, ::String) at utils.jl:30
withpath(::Function, ::String) at eval.jl:38
hideprompt(::Atom.##99#104{String,Int64,String}) at repl.jl:59
macro expansion at eval.jl:73 [inlined]
(::Atom.##98#103{Dict{String,Any}})() at task.jl:80
# Hessian Eigenmaps transformation
Y_HLLE = transform(HLLE, data_array; k = 12, d = 2)
UndefVarError: int not defined
#transform#9(::Int64, ::Int64, ::Function, ::Type{ManifoldLearning.HLLE}, ::Array{Float64,2}) at hlle.jl:44
(::MultivariateStats.#kw##transform)(::Array{Any,1}, ::MultivariateStats.#transform, ::Type{ManifoldLearning.HLLE}, ::Array{Float64,2}) at :0
include_string(::String, ::String) at loading.jl:522
include_string(::String, ::String, ::Int64) at eval.jl:30
include_string(::Module, ::String, ::String, ::Int64, ::Vararg{Int64,N} where N) at eval.jl:34
(::Atom.##100#105{String,Int64,String})() at eval.jl:75
withpath(::Atom.##100#105{String,Int64,String}, ::String) at utils.jl:30
withpath(::Function, ::String) at eval.jl:38
hideprompt(::Atom.##99#104{String,Int64,String}) at repl.jl:59
macro expansion at eval.jl:73 [inlined]
(::Atom.##98#103{Dict{String,Any}})() at task.jl:80
And when I try to plot it, I get
scatter(Y_LEM, title="LEM - ManifoldLearning")
No user recipe defined for ManifoldLearning.LEM
macro expansion at series.jl:132 [inlined]
apply_recipe(::Dict{Symbol,Any}, ::Type{Plots.SliceIt}, ::Void, ::ManifoldLearning.LEM, ::Void) at RecipesBase.jl:287
_process_userrecipes(::Plots.Plot{Plots.GRBackend}, ::Dict{Symbol,Any}, ::Tuple{ManifoldLearning.LEM}) at pipeline.jl:81
_plot!(::Plots.Plot{Plots.GRBackend}, ::Dict{Symbol,Any}, ::Tuple{ManifoldLearning.LEM}) at plot.jl:177
(::RecipesBase.#kw#plot)(::Array{Any,1}, ::RecipesBase.plot, ::ManifoldLearning.LEM) at :0
#scatter#632(::Array{Any,1}, ::Function, ::ManifoldLearning.LEM, ::Vararg{ManifoldLearning.LEM,N} where N) at RecipesBase.jl:381
(::Plots.#kw##scatter)(::Array{Any,1}, ::Plots.#scatter, ::ManifoldLearning.LEM, ::Vararg{ManifoldLearning.LEM,N} where N) at :0
include_string(::String, ::String) at loading.jl:522
include_string(::String, ::String, ::Int64) at eval.jl:30
include_string(::Module, ::String, ::String, ::Int64, ::Vararg{Int64,N} where N) at eval.jl:34
(::Atom.##100#105{String,Int64,String})() at eval.jl:75
withpath(::Atom.##100#105{String,Int64,String}, ::String) at utils.jl:30
withpath(::Function, ::String) at eval.jl:38
hideprompt(::Atom.##99#104{String,Int64,String}) at repl.jl:59
macro expansion at eval.jl:73 [inlined]
(::Atom.##98#103{Dict{String,Any}})() at task.jl:80
my data_array is a 547×96 Array{Float64,2}.
Help much appreciated!