Error using length, Too many input arguments.
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
C A
el 30 de Ag. de 2021
Comentada: Walter Roberson
el 1 de Sept. de 2021
I have a bunch of data from animal cells at different times. j represents the time frame. I want to extract a field from my object and that field can either have one or two values. If I have one value, I want to extract the value as it is and if I have two values, I want to average them out. This is a snippet of my code.
if length(Obj.MatFile{cellnumber}{j},ExtractField)==2
Answer(icellnumber,i)=mean(Obj.MatFile{cellnumber}{j}.(ExtractField));
else
Answer(icellnumber,i)=Obj.MatFile{cellnumber}{j}.(ExtractField);
end
I keep getting the above error. Any help would be greatly appreciated. Thanks in advance.
0 comentarios
Respuesta aceptada
Más respuestas (1)
Stephen23
el 31 de Ag. de 2021
Editada: Stephen23
el 31 de Ag. de 2021
if length(Obj.MatFile{cellnumber}{j}.(ExtractField))==2
But note that you do not need to check the length: taking the mean of one value simply returns that value, so in both cases you can simply do this (and not worry about how many values there are):
Answer(icellnumber,i) = mean(Obj.MatFile{cellnumber}{j}.(ExtractField));
and then get rid of the IF entirely.
2 comentarios
Walter Roberson
el 1 de Sept. de 2021
"if there are more than two" -- use numel() instead of length() if you want to know how many values there are. length() has a slightly different meaning.
Ver también
Categorías
Más información sobre Startup and Shutdown en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!