Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

To resolve issues starting MATLAB on Mac OS X 10.10 (Yosemite) visit: http://www.mathworks.com/matlabcentral/answers/159016

Summation problem help please!

Asked by A T. on 5 Dec 2012

Hi all!

I am having troubles to do the code for a summation. I tried with two different ways, initializating the variable and then with a loop and with the "sum" function,I'll show you below but I am terribly confused on how to get what I want.

So, I have this matrix, called Snmo, that has 3 dimensions (lets say (29x100x3)) so I picture it as having 3 pages with a matrix of 29x100 in each page and I want to sum the terms in each column of the 29x100 matrix, hence I am collapsing the 29 rows into 1 and the final matrix is 1x100, then I do that for the other two pages, I combine them and the result should be a 3x100 matrix.

Please help!!

Method 1

 lp=3
 lt=100
 Rn(lp,lt)=0;
 for lp=1:length(p) %This is the third dimension =3
    for lj=1:NXj % rows = 29
        for lt=1:length(rec1) &the columns=100
        Rn(lp,lt)=Rn(lp,lt) + (Sign(Snmo(lj,lt,lp)).*(abs(Snmo(lj,lt,lp))).^(1/N));
        end
    end
 end

Method 2:

 Rn=zeros(9,100);
 for i=1:length(p) %3
    for j=1:NXj
       Rn(i,100)=sum(Sign(Snmo(j,:,i)).*(abs(Snmo(j,:,i))).^(1/N)));
    end
 end

THANK YOU

1 Comment

A T. on 5 Dec 2012

you can ignore the "Sign(Snmo(:,:,:)"

A T.

Tags

Products

1 Answer

Answer by Fangjun Jiang on 5 Dec 2012
Accepted answer

Would this be what you need?

a=rand(29,100,3);
b=squeeze(sum(a,1));
whos;

1 Comment

A T. on 5 Dec 2012

Yesss! It's amazing!!

Thank you so much! :)

Fangjun Jiang

Contact us