我有一个随机变量 X,它具有以下概率密度函数,如下所示:
X/25, 0 <= x <= 5
2/5-x/25, 5 <= x <= 10
0, otherwise
我正在尝试将其输入 matlab,但似乎找不到有关如何执行此操作的文档。有任何想法吗?
我有一个随机变量 X,它具有以下概率密度函数,如下所示:
X/25, 0 <= x <= 5
2/5-x/25, 5 <= x <= 10
0, otherwise
我正在尝试将其输入 matlab,但似乎找不到有关如何执行此操作的文档。有任何想法吗?
您可以生成您描述的概率密度函数,如下所示:
function [y] = f( x )
if (x>=0 && x<=5)
y = x/25;
elseif (x>=5 && x<=10)
y =2/5-x/25;
else
y=0;
end
end
如果您想使用向量 x 绘制函数,可以使用:
function [y] = f( x )
n = numel(x);
y = zeros(1,n);
for k = 1:n
if (x(k)>=0 && x(k)<=5)
y(k) = x(k)/25;
elseif (x(k)>=5 && x(k)<=10)
y(k) =2/5-x(k)/25;
else
y(k)=0;
end
end
实际上,您可以将第二个函数定义用于 x 和 x 的单个值作为值向量。具有上述函数的向量 x,如下所示:
x = 0:0.1:15;
y = f(x)
产生图形:
认识到概率密度函数 (PDF)来自三角形分布,另一种方法是使用MATLAB 统计工具箱中的makedist()
和函数,该工具箱使用概率分布对象。pdf()
下面的示例代码。
% MATLAB R2018b
pd = makedist('Triangular',0,5,10); % Define probability distribution object
X = 0:.1:12;
plot(X,pdf(pd,X),'r-','LineWidth',1.4) % Use pdf() function