已知一组数据,如何用matlab画出它的概率密度分布图,请给出具体程序
5个回答
展开全部
实例程序,应对普通情况应该够了,但是有些特殊情况不合适,不过大多数情况不必要求非常准确,如果要很准确,自行修改下。
% 数据
ydata = random('Normal',0,1,1,1024);
% 准备一些变量
bins = 100; %分100个区间进行统计
maxdat = max(ydata);%最大值
mindat = min(ydata);%最小值
bin_space = (maxdat - mindat) / bins;%每个bin宽度
xtick = mindat : bin_space : maxdat - bin_space;
% 求pdf
distribution = hist(ydata,bins);%使用直方图得到数据落在各区间的总数
pdf = bins * distribution / ((sum(distribution )) * (maxdat - mindat));%计算pdf
% 画图
figure;
plot(xtick,pdf);
% 验证:sum(pdf) * bin_space应该接近1
% 数据
ydata = random('Normal',0,1,1,1024);
% 准备一些变量
bins = 100; %分100个区间进行统计
maxdat = max(ydata);%最大值
mindat = min(ydata);%最小值
bin_space = (maxdat - mindat) / bins;%每个bin宽度
xtick = mindat : bin_space : maxdat - bin_space;
% 求pdf
distribution = hist(ydata,bins);%使用直方图得到数据落在各区间的总数
pdf = bins * distribution / ((sum(distribution )) * (maxdat - mindat));%计算pdf
% 画图
figure;
plot(xtick,pdf);
% 验证:sum(pdf) * bin_space应该接近1
Sievers分析仪
2024-10-13 广告
2024-10-13 广告
是的。传统上,对于符合要求的内毒素检测,最终用户必须从标准内毒素库存瓶中构建至少一式两份三点标准曲线;必须有重复的阴性控制;每个样品和PPC必须一式两份。有了Sievers Eclipse内毒素检测仪,这些步骤可以通过使用预嵌入的内毒素标准...
点击进入详情页
本回答由Sievers分析仪提供
展开全部
clear all;
clc;
data = importdata("n(0,1).txt");%这里n(0,1).txt为你要导入的数据
[a, b] = normfit(data);%求出你给的服从正态分布的数据的均值和标准差,并赋给a,b
d = normpdf(data,a,b);%求出均值为a,标准差为b的正态分布密度函数在data各点的值
figure;
plot(data,d,'.');%以data为横坐标,d为纵坐标画出图形,‘.’为 图形各点的样式
clc;
data = importdata("n(0,1).txt");%这里n(0,1).txt为你要导入的数据
[a, b] = normfit(data);%求出你给的服从正态分布的数据的均值和标准差,并赋给a,b
d = normpdf(data,a,b);%求出均值为a,标准差为b的正态分布密度函数在data各点的值
figure;
plot(data,d,'.');%以data为横坐标,d为纵坐标画出图形,‘.’为 图形各点的样式
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
还是用ksdensity函数吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一般通过已知数据,求取概率密度。需要统计学的知识。大致是画频谱图。具体好像是求什么频数等等。但是这个也不是太难。
你照着相关书籍,就应该能写程序了。至于重复数值,那肯定是可能的啊。因为一个未知变量都能够重复出现,毕竟是概率事件。
你照着相关书籍,就应该能写程序了。至于重复数值,那肯定是可能的啊。因为一个未知变量都能够重复出现,毕竟是概率事件。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
额
追问
额
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询