Find the average of a column without the use of commands.
Show older comments
I have a matrix that is [365,4] and I need to find the average of each column without the use of commands like mean or size. With the use of a for loop.
5 Comments
KSSV
on 15 May 2023
What have you attempted?
KSSV
on 15 May 2023
It is problem with importing data. What error you are getting?
Cappi Nguyen
on 15 May 2023
dpb
on 15 May 2023
Beware! length is a dangerous command/function that may not return what you intend -- it is defined as max(size(x)) and so returns either the number of elements in a row or column of any 2D array -- which would depend upon the array configuration. The 4x3 or 3x4 array will both return 4...
Answers (1)
Hi Cappi,
I understand that you wanted to calculate the average of columns of a matrix without the usage of in-built commands.
Please find the following code snippet to do the same.
A = [1 2 3;4 5 6;7 8 9;10 11 12] %Consider the matrix for reference
nRows = height(A);
nColumns = width(A);
avg = zeros(1,nColumns);
for i = 1:width(A)
C = A(:,i);
sum = 0;
for j = 1:nRows
sum = sum + C(j);
end
avg(i) = sum/nRows;
end
disp(avg)
Categories
Find more on Loops and Conditional Statements in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!