Hi all,
I have a matrix in matlab that I already divide in 52 matrices, now I want to multiply each one of this matrices by the same number.
Each one of the 52 matrices have the size 7*24.
So the code I used to read and divide the matrix is;
[num, preco] = xlsread('preco_2008', 'Folha1' , 'C3:Z368');
[M,N] = size(preco); %# Matrix size
nSub = 52; %# Number of submatrices
semana = mat2cell(preco,diff(round(linspace(0,M,nSub+1))),N);
Now I want to multiply "semana" by Txsemanal
IPC_2008=-0.5;
IPC_2013=-0.2;
Txmensal=(IPC_2013-IPC_2008)/(IPC_2008);
Txsemanal=Txmensal/4;
I already tried A = mtimes(semana,Txsemanal) and cellfun(@mtimes, semana, Txsemanal, 'UniformOutput', false)
But I getting and error.
Could you please help me with multiplication?

 채택된 답변

Image Analyst
Image Analyst 2013년 12월 23일

0 개 추천

preco is the text (strings) in your workbook. So you can't multiply words by numbers . Perhaps you meant to use num instead , which is an array of numerical types, most likely doubles.

댓글 수: 1

João
João 2013년 12월 24일
Thx for the help, I already found my problem I was using dots in excel so I was getting numbers as text.

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

추가 답변 (1개)

ES
ES 2013년 12월 23일
편집: ES 2013년 12월 23일

0 개 추천

[num, preco] contains cell array. mtimes does no support cell array inputs. so convert them to matrices using cell2mat - http://www.mathworks.in/help/matlab/ref/cell2mat.html

카테고리

도움말 센터File Exchange에서 Logical에 대해 자세히 알아보기

질문:

2013년 12월 22일

댓글:

2013년 12월 24일

Community Treasure Hunt

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

Start Hunting!

Translated by