problem in neighbors function
Mostrar comentarios más antiguos
hello,
This is my graph
G=[0 1 1 0 0 0;1 0 1 1 0 0; 1 0 0 1 1 0; 0 0 0 0 1 0; 0 0 0 0 0 1; 0 1 0 1 1 0];
when I apply the function neighbors
neighbors(G,active_nodes_last_round(individual));
where active_nodes_last_round(individual)=1;
I got the following error:
Undefined function 'neighbors' for input arguments of
type 'double'.
Error in IC_paper1 (line 26)
potential_infected=neighbors(G_duplicate,active_nodes_last_round(individual));
Thanks in advance
Respuestas (1)
Steven Lord
el 27 de Jul. de 2022
0 votos
The neighbors function, in this context, requires its first input to be a graph object not an adjacency matrix. Create a graph object from your adjacency matrix by calling graph and pass the resulting object into neighbors.
13 comentarios
huda nawaf
el 27 de Jul. de 2022
Editada: huda nawaf
el 27 de Jul. de 2022
Steven Lord
el 27 de Jul. de 2022
The graph object was introduced in release R2015b (as was the neighbors function.)
Are you using an earlier release?
If you're using release R2015b or later, what do these two commands display?
which -all graph
which -all neighbors
huda nawaf
el 27 de Jul. de 2022
Steven Lord
el 27 de Jul. de 2022
Don't tell me what they displayed. Show me. Please copy and paste the exact output you see from those two commands into a comment. Also show me what release you're using (copying and pasting the output from the following call would be an easy way to do so.)
version
huda nawaf
el 27 de Jul. de 2022
Steven Lord
el 27 de Jul. de 2022
You won't be able to use any of the graph and network algorithm functionality included in MATLAB as of release R2015b (including the neighbors function for graph objects.) You're using an older release of MATLAB. You would need to upgrade to release R2015b or later.
huda nawaf
el 28 de Jul. de 2022
Walter Roberson
el 28 de Jul. de 2022
huda nawaf
el 30 de Jul. de 2022
Walter Roberson
el 31 de Jul. de 2022
No. Those toolboxes are not exact replacements for the MATLAB graph functions.
The idea is that possibly you could rewrite whatever algorithm you are trying to do, in terms of the functions provided by one of those toolboxes.
If you need drop-in replacements for neighbors() and the other MATLAB graph-theory functions, then you should upgrade your MATLAB to at least R2015b.
huda nawaf
el 1 de Ag. de 2022
Steven Lord
el 1 de Ag. de 2022
If you've purchased a license for the later releases you should have received instructions on how to download and install it in an email from Mathworks. Or you could go to the "Download Products" section on the Support section of the website, or you could click on the Get MATLAB button in the upper-right corner of this page.
huda nawaf
el 2 de Ag. de 2022
Editada: huda nawaf
el 2 de Ag. de 2022
Categorías
Más información sobre Introduction to Installation and Licensing en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!