matlab - 在 MATLAB 中生成具有已知 PDF 表达式的随机变量
问题描述
我知道随机变量 r 的概率密度函数 (PDF) 表达式为 2r/R^2,其中 0<=r<=R。那么,它的 CDF 为 r^2/R^2。
有人可以帮助我按照上述分布在 MATLAB 中生成随机变量 r 吗?
解决方案
https://blogs.sas.com/content/iml/2013/07/22/the-inverse-cdf-method.html
我使用与他们相同的变量
f(x) = 2x/R^2
F(x) = x^2/R^2
求解方程 F(x) = u 中的 x
u*R^2 = x^2
x = sqrt(u * R^2) v -sqrt(u * R^2)
在 Matlab 中:
N=1E5;
R=1;
u = rand(1,N);
x = sqrt(u*R^2);
histogram(x)
推荐阅读
- spring-boot - Redis最大等待和超时之间的区别
- swift - AppTransparencyTracking 在 Swift UI 中不起作用
- reactjs - 如何在 React 类容器中插入超链接?
- c++ - 我想用 variable.im 实现对象数组得到错误“表达式必须是一个常量值”
- flutter - 错误:在 android studio 中使用或覆盖已弃用的 API Flutter
- rust - 仅读取 fifo 中的部分缓冲区 (VecDeque)
- curl - SNowflake-Power BI 连接问题 - CURLerror
- django - 将 PrimaryKeyRelatedField 传递给客户端时感到困惑
- node.js - 了解 lambda 中异步调用的行为
- flutter - 当我刷卡时出现此错误:-Unhandled Exception: setState() called after dispose()