我有一个矩阵 A (100,5),其中每一行都是模拟的结果(n = 100)。
我想绘制/'记录' A 中的最大值小于0.40的模拟累积比例。我想象的图是垂直轴,其中值的范围是0到100%,水平轴是模拟的数量。
最终,我将在同一图表上绘制几个场景,其中至少有一个场景将在100个模拟标记处达到100%累积比例。
下面的代码是我已经走了多远,但我无法让累积比例下降。我认为我的矩阵 C 并不是我想要的。
干杯。
ts=1:1:100;
% Create A where all rows sum to 1
A = rand(100, 5); % @Nzbuu http://stackoverflow.com/q/9312850/1670053 for this ex
rowsum = sum(A,2);
A = bsxfun(@rdivide, A, rowsum);
% Create a vector from A where each elements records whether the max value was less
% than 0.40 (value = 0) or greater than 0.40 (value = 1)
counts = zeros(100,1);
for i = 1:100
if max(A(i,:)) < 0.40
counts(i) = 0;
else
counts(i) = 1;
end;
end;
B = cumsum(counts); % Get the cumulative sum of counts
C = B/100
plot(ts, C)