Obtain the mean angle (circle mean of a file)

Hi, first of all, thank you for reading me, i need something very simple but i can't find a good program to do this...
The average of wind direction data.
i am using matlab 2019a, and have all this data (for a year) and i need the average of this data (attach photo) for every row (this data are in degree, so this not regular mean is circle mean that i need) , so every 10 minutes, so in the end i want to have only one column, i am using meanangle, but i don't obtain good results. don't obtain good results.
if you can help me I would appreciate it too much

 Risposta accettata

Bruno Luong
Bruno Luong il 5 Ago 2020
Modificato: Bruno Luong il 5 Ago 2020
angledata_deg is your angle data in degree
meanangle_deg = rad2deg(atan2(mean(sind(angledata_deg),2),mean(cosd(angledata_deg),2)))

3 Commenti

Ana Soph
Ana Soph il 5 Ago 2020
Modificato: Ana Soph il 5 Ago 2020
thanks, i am using it, but i am obtain negative values...
i don't know if i am doing correctly
Normal, since atan2 returns angle in [-pi,pi] so it can be negative, if you prefer angle in [0,2*pi]
do this after the first command.
meanangle_deg = mod(meanangle_deg ,360)
thank you so much :D

Accedi per commentare.

Più risposte (2)

%enter the number of rows here
arraySize=5;
meanData=zeros(arraySize,1)
for i=1:5
meanData(i)=mean(originalData(i,:))
end
Replace all the variables with your stuff. I think this is what you need? I'm not quite sure what you mean by 'circle mean' but this fits the description of the second half of your question.

1 Commento

But i need the circle mean, not the regular mean, because are degree

Accedi per commentare.

num = xlsread(myfile) ; % better use readtable
iwant = mean(num,2) ;

3 Commenti

But i need the circle mean bc i am working with degrees
What is circle mean? Your units are in degrees, your mean value will be in degrees.

Accedi per commentare.

Categorie

Community Treasure Hunt

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

Start Hunting!

Translated by