I am trying to do some column calculations in MATLAB Gui columns. Like 2*pi*column1 gives column 3... So I used the code
dataC = get(handles.uitable1, 'Data'); dataC(:,3) = cell2mat(dataC(:,1)) * pi * 2;
Ans this gives error of conversion to cell from double is not possible in reference to the last line of the code.

 채택된 답변

Stephen23
Stephen23 2019년 8월 16일
편집: Stephen23 2019년 8월 16일

1 개 추천

A = cell2mat(dataC(:,1));
B = A * pi * 2;
dataC(:,3) = num2cell(B); % <- you need NUM2CELL!

댓글 수: 6

Thanks so much for your reaponse but it just changed the error to.
Unable to perform assignment because the size of the left side is 20 by 1 and the size of the right side is 20 by 2
Stephen23
Stephen23 2019년 8월 16일
What size is A ?
By the looks of error message , perhaps A is of size 20 x 2. Perhaps just change num2cell(B) to num2cell(B,2).
On the same code please i have the following issues
dataC = get(handles.uitable1, 'Data'); Data = cell2mat(dataC(:,1)); C = 2* Data(:,1) * pi; dataC(:,3) = num2cell(C(:,1)); set(handles.uitable1, 'Data', dataC) With this code it adds 48 to each digit input before performing the task. And when two digits number is entered like 56 it only calculate for 5 which is the first figure alone. Anyone please help out.
Stephen23
Stephen23 2019년 8월 25일
@Tolulope Abiola: either make sure that the uitable column is numeric, or convert to numeric after obtaining the data from the uitable.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터 및 File Exchange에서 Migrate GUIDE Apps에 대해 자세히 알아보기

제품

질문:

2019년 8월 16일

댓글:

2023년 7월 19일

Community Treasure Hunt

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

Start Hunting!

Translated by