Calculating pdf and cdf for data extracted as a table
1 次查看(过去 30 天)
显示 更早的评论
Hello,
I am trying to calculate the cdf and pdf of the wind speed using data extracted from a dat file using the readtable function:
data1 = readtable('FINO1_windspeed.dat', 'CommentStyle','#');
%TF = ismissing(data1,{-999});
data1 = standardizeMissing(data1,-999);
DateStrings = data1(:,1);
time_vector = datetime(DateStrings.Variables,'InputFormat','yyyy-MM-dd HH:mm:SS');
%plot(time_vector,data1.(2))
%Calculate the mean wind speed, its standard deviation and its variance
windspeedmean = nanmean(data1.(2))
windspeedstd = nanstd(data1.(2))
windspeedvar = nanvar(data1.(2))
%Calculate the pdf of wind speed
pdfwindspeed = pdf('Normal',A)
Where I have defined A as data1(:,2) because all the wind speed data are in the 2nd column. The first column is the time in a format of yyyy:MM:dd HH:mm:SS. The plot works just fine but the problem lays with the cdf and pdf calculations
I also tried A as data1.(2) but i get a long list of NaN.
Can anyone suggest a solution with an explanation for this?
Thanks for your help
2 个评论
回答(1 个)
Jeff Miller
2021-9-4
This command
pdfwindspeed = pdf('Normal',A)
returns the pdf of the A values within the standard normal with mu=0 and sigma=1. You might be getting nan's back if your A values come from a normal with a different mu & sigma. You should get more reasonable pdf values with something like this:
est_mu = mean(A);
est_sigma = std(A);
pdfwindspeed = pdf('Normal',A,est_mu,est_sigma);
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!