what will be the solution for this error
    6 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
function idx=nomc(meas) 
W=SimilarMatrix(meas,1); 
D=diag(sum(W)); 
L=D-W; 
Lsym=(D^(-1/2))*L*(D^(-1/2)); 
[ev ed]=eig(Lsym); 
d=diag(ed);  %#ok<NASGU>
V=ev(:,1:3); 
for i=1:250 
    for j=1:7 
        U(i,j)=V(i,j)/sqrt(sum(V(i,:).^2));  %#ok<AGROW>
    end 
end 
idx=kmeans(U,3); 
figure;plot(idx); 
result=[length(find(idx==1)),length(find(idx==2)),length(find(idx==3))];
getting error
??? Attempted to access V(1,4); index out of bounds because
size(V)=[143,3].
Error in ==> nomc at 11
        U(i,j)=V(i,j)/sqrt(sum(V(i,:).^2));  %#ok<AGROW>
Error in ==> Normalizemeanseg at 120
f=nomc(y);
2 comentarios
  Rushikesh Tade
      
 el 12 de Sept. de 2014
				can you provide "meas" variable in mat format or provide dimensions?
Respuestas (1)
  Titus Edelhofer
    
 el 12 de Sept. de 2014
        Hi,
you write
V = ev(:, 1:3);
so V has three columns. But your loop on j is
for j=1:7
That doesn't match ...
Titus
4 comentarios
  Image Analyst
      
      
 el 12 de Sept. de 2014
				Poonam, I think you're mistaken. If the error says
Attempted to access V(1,4);
and your code is
for j=1:3
Then there is no way the second index of V could be 4 in this line
U(i,j)=V(i,j).....
  Pierre Benoit
      
 el 12 de Sept. de 2014
				
      Editada: Pierre Benoit
      
 el 12 de Sept. de 2014
  
			Well, my guess was that this is no longer j that was causing a problem but i since the boundary of this loop is also quite arbitrary. And, maybe the author forgot to tell us or didn't see that the error changed a little.
But at this point, we can only guess given how little information we have.
Ver también
Categorías
				Más información sobre Matrix Indexing en Help Center y File Exchange.
			
	Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!




