¿Por qué recibo un error de indexación aunque no estoy intentando indexar en ningún lugar?[cerrado]

StackOverflow https://stackoverflow.com//questions/25020549

  •  21-12-2019
  •  | 
  •  

Pregunta

Ejecuto un solo comando y obtengo:

>> rms = rms(distances(1:50,1))
Subscript indices must either be real positive integers or logicals.

distances es solo un vector de dobles no negativos.

¿Fue útil?

Solución

Al llamar a esto más de una vez, guardó el resultado de rms(distances(1:50,1)), que es un doble escalar, a la variable rms.Entonces rms ya no es una función, sino un escalar, y con cada llamada posterior intentas indexar en rms con tus dobles no negativos.Es como si hicieras lo siguiente:

x = 1.1; 
x(5.4)

En general, nunca guarde resultados en nombres de funciones.En su lugar, haga lo siguiente:

clear rms
distancesRMS = rms(distances(1:50,1));
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top