Undefined function or method 'mrdivide'

7 visualizaciones (últimos 30 días)
Gaurav
Gaurav el 2 de Abr. de 2018
Comentada: Gaurav el 3 de Abr. de 2018
I am writing a code in matlab GUI and using uitable... Code in which error is there is given below
data=get(handles.uitable1,'data');
A(:,1)=data(:,2);
B(:,1)=(0.56*0.65)/A(:,1);
Error is undefined function or method 'mrdivide' Can anyone plz help me to fix this issue ?
  2 comentarios
Stephen23
Stephen23 el 2 de Abr. de 2018
Editada: Stephen23 el 2 de Abr. de 2018
The uitable data field can by a numeric, logical, or cell array. Possibly you have a cell array, in which case numeric operations are not defined for it. Solution: use a numeric array.
Gaurav
Gaurav el 2 de Abr. de 2018
Being new to matlab.... I dont know from where i can choose whether it is a cell array or numeric array.... or any other array type .. Where can i select thpe of array in gui Thnx in advance

Iniciar sesión para comentar.

Respuestas (2)

Image Analyst
Image Analyst el 2 de Abr. de 2018
Editada: Image Analyst el 2 de Abr. de 2018
Try doing an element by element divide with dot slash, and see if that fixes it:
whos A
B(:, 1) = (0.56 * 0.65) ./ A(:, 1); % Note: ./ NOT just simply /
If B is not defined as a 2-D array in advance, then you can get rid of the (:,1) and simply have
B = (0.56 * 0.65) ./ A(:, 1); % Note: ./ NOT just simply /

Steven Lord
Steven Lord el 2 de Abr. de 2018
I think Stephen's suspicion that A is a cell array is correct. To confirm this, add this line immediately after the line where you define A then run your code.
disp(class(A))
If this displays the word "cell", A is a cell array. If a regular numeric array is a walnut meat, a cell array containing numeric arrays is a walnut shell. You need to crack it open to get at the meat inside. You do that using curly brace indexing.
A = {1, 2:3, [4 5; 6 7]}
B = A(2)
C = A{2}
whos A B C
In that example, A and B are cell arrays. C is the contents of the second cell of the cell array A and so is a double array. Your code currently operates on B, but you want it to operate on C.
  4 comentarios
Image Analyst
Image Analyst el 2 de Abr. de 2018
You forgot to show the results of the "whos A" command, like I had in my code. Please do so.
There are arrays, and cell arrays (a special type of array). When you say "All the data is in the form of array" I do not know what you're talking about. Is A a double array? A cell array? A cell array that contains an array inside each cell?
Please read the FAQ on cell arrays before replying: http://matlab.wikia.com/wiki/FAQ#What_is_a_cell_array.3F
Gaurav
Gaurav el 3 de Abr. de 2018
Thanx everyone... for your help... i have initiated array as a zeros() and it also works perfectly....

Iniciar sesión para comentar.

Categorías

Más información sobre Programming en Help Center y File Exchange.

Etiquetas

Productos

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by