summation with for loop for all rows in another column

1 次查看(过去 30 天)
Capture.JPG
I had following data as attached
h = 1;
I_all size(3154*20)
So hmax = 20;
I1 = I_all(1,1) for first row and I1=I_all(2,1) for 2nd row and so on........
Need F_HL for all 3154 rows..........
  2 个评论
Rik
Rik 2020-1-13
What have you tried so far? Especially the version with a for loop seems easy to implement.
MUKESH KUMAR
MUKESH KUMAR 2020-1-13
h=1:20;
F_HL_N = 0;
for i=1:20
F_HL_N = F_HL_N+(I_all(1,i)/I_all(1,1))^2* h(i)^2;
end
F_HL_D = 0;
for i=1:20
F_HL_D=F_HL_D+(I_all(1,i)/I_all(1,1))^2;
end
F_HL = F_HL_N/F_HL_D; % for first row
% now want to do for all 3154 rows in for loop

请先登录,再进行评论。

回答(1 个)

Raj
Raj 2020-1-13
编辑:Raj 2020-1-13
You are almost there. Put the whole thing in another loop that runs accross all the rows and store F_HL for each row like this:
for ii=1:3154
h=1:20;
F_HL_N = 0;
for i=1:20
F_HL_N = F_HL_N+(I_all(1,i)/I_all(1,1))^2* h(i)^2;
end
F_HL_D = 0;
for i=1:20
F_HL_D=F_HL_D+(I_all(1,i)/I_all(1,1))^2;
end
F_HL(ii) = F_HL_N/F_HL_D; % for iith row
end
Done!

Community Treasure Hunt

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

Start Hunting!

Translated by