matlab画CDF曲线

本文介绍了如何利用MATLAB绘制累积分布函数(CDF)曲线,CDF用于展示随机变量的概率分布,有助于分析数据中异常值的影响。通过读取CSV文件中的数据,自定义cdfplotG函数,可以创建带有虚线的CDF图。
摘要由CSDN通过智能技术生成

CDF(cumulative distribution function)叫做累积分布函数
描述一个实数随机变量X的概率分布,是概率密度函数的积分。
我觉得它的最主要作用就是观测某些数值也就是随机变量的取值在那个附近出现的概率比较大,它是一个增函数. 可以有效的处理一些异常值.
随机变量小于或者等于某个数值的概率P(X<=x),即:F(x) = P(X<=x) 
累积分布函数(cumulative distribution function):对连续函数,所有小于等于a的值,其出现概率的和。F(a)=P(x<=a)
下面我们来讲一下怎么用matlab来画我们的累计分布图.
比如我们有一组CSV的数据,我们把这个存储这个数据的文件取名叫做test.csv

116,218,119
123,219,106
113,219,119
117,232,105
118,208,117
116,222,106
117,221,119
129,232,108
124,234,118
124,234,107
132,234,117
125,226,106
135,225,112
126,231,107
134,250,113
141,223,107
118,260,113
117,249,107
112,261,118
118,234,107
118,257,119
119,256,105
117,281,118
129,266,107
131,260,119
143,239,105
128,263,120
135,267,107
127,259,118
119,285,103
159,269,119
138,264,106
142,259,122
128,285,111
158,269,133
129,264,106
130,259,124
137,228,105
139,262,126
130,249,111
114,275,117
126,227,107
119,230,118
118,224,107
130,226,118
126,227,106
129,264,114
125,254,106
132,252,114
130,229,106
135,229,117
121,251,108
129,243,119
125,226,105
113,275,114
120,255,104
111,274,119
118,255,107
115,274,120
129,260,107
126,249,119
135,235,109
136,281,125
132,266,106
134,263,122
123,255,108
129,258,116
127,264,105
113,257,122
115,264,102
129,257,133
126,275,104
126,272,123
122,260,108
128,256,120
117,265,105
117,254,122
117,263,109
123,238,125
130,285,106
130,282,121
152,251,106
131,233,111
画图用的不是上面的数据:

%read data into matirx
%http function 
fid = fopen('F:\test\test.csv','rt'); %首先打开文件把数据读取出来
C = textscan(fid, '%f %f %f', 'Delimiter',',');
fclose(fid); %之后把数据扫描进C这个变量中,我们是按照浮点类型的形式来处理我们的数据的
%由于我们的数据有三列,所有我们这里取了三个%f出来,根据不同的数据我们取不同的格式说明符号.可以用类似C语言.每个数据之间是按照","来做分割.
%Delimiter表示的是取某些分割符来切分数据,再后面我们写逗号,表示按照逗号来分割数据

data1 = deal(C{1});
% 每一列数据表示的一次随机实验中取到的随机变量,所以我们分别处理
%这两组数据,以此类推.
data2 = deal(C{2});


%xlim([50:1500]);
h1=cdfplot(data1);

axis([50 500 0 1]);
set(h1,'color','b','Linewidth',3);
hold on;
h2=cdfplot(data2);% 在matlab中画图我们使用cdfplot,这个命令
%legend('b','Location','best');
set(h2,'color','r','Linewidth',1);
%axis([50 1500 0 1]);

legend('a','b','Location','best');
xlabel('Zhai You','FontSize',30);
ylabel(
  • 8
    点赞
  • 65
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用MATLAB.mat CDF曲线,可以按照以下步骤进行: 1. 在MATLAB中加载.mat文件。使用load函数加载.mat文件,并将数据保存到一个变量中。例如,假设.mat文件中的变量名为data,可以使用以下代码加载数据: data = load('filename.mat'); 2. 对数据进行排序。使用sort函数对数据进行排序,以便能够生成CDF曲线。例如,可以使用以下代码对数据进行排序: sortedData = sort(data); 3. 计算CDF值。使用cumsum函数计算数据的累积和,并除以数据总数得到CDF值。例如,可以使用以下代码计算CDF值: cdf = cumsum(sortedData) / length(sortedData); 4. 绘制CDF曲线。使用plot函数绘制CDF曲线。在绘制曲线时,将排好序的数据作为x轴,CDF值作为y轴。例如,可以使用以下代码绘制CDF曲线: plot(sortedData, cdf); 5. 添加标签和标题。使用xlabel和ylabel函数为x轴和y轴添加标签,使用title函数添加标题。例如,可以使用以下代码添加标签和标题: xlabel('Data'); ylabel('CDF'); title('CDF Curve'); 6. 显示图形。使用grid函数添加网格线,使用legend函数添加图例(如果需要),并使用xlim和ylim函数设置x轴和y轴的显示范围。最后,使用show函数显示绘制的图形。例如,可以使用以下代码显示图形: grid on; legend('CDF Curve'); xlim([min(sortedData), max(sortedData)]); show; 以上步骤可以帮助您使用MATLAB绘制.mat文件的CDF曲线。您只需要将上述代码中的'filename.mat'替换为您的.mat文件的路径和文件名,并根据需求调整其他参数。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值