为置信区间绘制信号平均值

时间:2018-08-10 14:31:13

标签: matlab plot mean confidence-interval

我在y轴上有一个信号(横摆率),在x轴上有一个时间信号(时间)。我试图找到该信号的置信区间。但是我无法绘制信号平均值。我认为,因为平均值有2个向量,但信号大小为5001。我该如何解决?感谢您的回答!

N = size(yawrate,1);  % Number of ‘Experiments’ In Data Set

yMean = mean(yawrate);  % Mean Of All Experiments At Each Value Of ‘time’`

ySEM = std(yawrate)/sqrt(N);  % Compute ‘Standard Error Of The Mean’ Of All Experiments At Each Value Of ‘time’

CI95 = tinv([0.025  0.975], N-1);  % t-score Calculate 95% Probability Intervals Of t-Distribution

yCI95 = bsxfun(@times, ySEM, CI95(:));  % Calculate 95% Confidence Intervals Of All Experiments At Each Value Of ‘x’         

figure

plot(time, yMean)   % Plot Mean Of All Experiments

hold on

plot(time, yCI95+yMean)  % Plot 95% Confidence Intervals Of All Experiments

hold off

grid

2 个答案:

答案 0 :(得分:0)

我会发表评论,但是我没有足够的声誉。由于我要 answering ,因此我还将使用注释中已有的内容。关于注释中已经指出的问题,这个问题还不清楚:size(yawrate)[1,N]还是[N,M]对于某些M?相同的问题代表time。如果从您的回答和代码中我都能正确理解,则可以假设yawrateNxM,而yMean的大小是1xM。在这种情况下,您也需要花费时间1xM。克里斯·伦戈(Cris Luengo)就是这样写的。

此外,yCI95+yMean意味着向2x1的{​​{1}}值添加包含置信区间的1xM向量。那会给你一个yMean数组。并非在所有的Matlab版本中都有效,我认为这需要第一个为2xM而非2x1,因此您可能需要这样做

1x2
再次

假设我了解您的代码。检查您所做的尺寸假设。

答案 1 :(得分:0)

yMean似乎是一个单一值,因此在绘制它时,每个时间值都会得到一个点。如果采样时间太大,则可以通过在绘图函数中使用t = 0:0.01:time(end)而不是时间来增加线条的可见性。