描述性统计的matlab实现

描述性统计的matlab实现

理论讲的再多不会做也白弄

直接上手

一.针对接近正态分布的(均值,方差,标准差,极差,变异系数,偏度,峰度)

这里我必须提前说明一点就是,你在写好函数后,函数的名是dts,你保存的文件名也必须是dts.m才行,这样调用dts()函数的时候才不会出现错。

 
x=[ 1 2 0/0 4 5 6]
function dts(x);
a = x(:); nans = isnan(a); ind = find (nans); %nan是0/0. a(ind)=[]; xbar= mean(a); disp(['均值是:',num2str(xbar)]); s2 = var(a); disp(['方差是:',num2str(s2)]); s = std(a); disp(['标准差是:',num2str(s)]);%数据里必须是元素的类型一样,所以要有num2str()函数转一下。 R = range(a); disp(['极差是:',num2str(R)]); cv = 100*s./xbar;%它是一个相对的数且没有量纲,所以更具有说明性。 disp(['变异系数是:',num2str(cv)]); g1 = skewness(a,0); disp(['偏度:',num2str(g1)]); g2=kurtosis(a,0); disp(['峰度',num2str(g2)]);
 

二.针对 有极端值(中位数,上下四分位数,四分位极差,三均值,上下截断点)

 
function fws(x)
a = x(:);
a(isnan(a))=[];
ss5 = prctile(a,50);
disp(['中位数是:',num2str(ss5)]);
ss25 = prctile(a,25);
disp(['下四分位数是:',num2str(ss25)]);
ss75 = prctile(a,75);
disp(['上四分位数是:',num2str(ss75)]);
RS = ss75-ss25;
disp(['四分位极差:',num2str(RS)]);
sss = 0.25*ss25+0.5*ss50+0.25*ss75;
disp('三均值:',num2str(sss));
 

三.用样本的分布描述总体的matlab

 茎叶图:

 
a=[10 20 10;54 56 78]
a=a(:)
b=a-mod(a,10);
b=unique(b);
b=sort(b);
N=length(b);
for k=1:N
    tmp=b(k);
    TT=sort(a');
    TT(TT<tmp)=[];
    TT(TT>tmp+10)=[];
    ts=mat2str(mod(TT,10));
    ts(ts=='[')=[];
    ts(ts==']')=[];
    disp([int2str(tmp),'   :   ',ts])
end
    
 

 经验分布函数图

 
X=[12,3,5,6;4,5,6,7];
X=X(:)'
X=sort(X)
n=length(X)
m=size(X)%写这一步是为了比较length 和 size两个函数的不同
xsui=ones(size(X))
B=cumsum(xsui)
B=B/n
x1=min(X)-(max(X)-min(X))*0.1
xr=max(X)+(max(X)-min(X))*0.1
x=[x1,X,xr]
y=[0,B,1]
h=stairs(x,y)
set(h,'linewidth',2,'color','k')
xlabel('x')
ylabel('F(x)')
grid on
axis([x1,xr,-0.05,1.05])
title('经验分布函数')
 

 

出处:http://www.cnblogs.com/zhengtaodoit/p/4933958.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/119597.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • the jdbc driver has been_the tomcat connector configured

    the jdbc driver has been_the tomcat connector configured使用JDBC连接MySql时出现:Theservertimezonevalue’�й���׼ʱ��’isunrecognizedorrepresentsmorethanonetimezone.YoumustconfigureeithertheserverorJDBCdriver(viatheserverTimezoneconfiguration…

  • 汇编语言之Debug教程篇

    参考书籍《汇编语言》——王爽Debug的命令比较多,这里我介绍常用的命令,其余的等需要的时候再进行查询。命令用途Debug-R查看、改变CPU寄存器的内容Debug-D查看内存中的内容Debug-E改写内存中的内容Debug-U将内存中的机器指令翻译成汇编指令Debug-T执行一条机器指令…

  • 横向滑动视图HorizontalScrollView精炼详解

    横向滑动视图HorizontalScrollView精炼详解一、前期基础知识储备由于移动设备物理显示空间一般有限,不可能一次性的把所有要显示的内容都显示在屏幕上。所以各大平台一般会提供一些可滚动的视图来向用户展示数据。Android平台框架中为我们提供了诸如ListView、GirdView、ScrollView、RecyclerView等滚动视图控件,这几个视图控件也是我们平常使用最多的。本节内容我们来分析一下横向滚动视图Horizonta…

  • mybatis框架–学习笔记(下)

    mybatis框架–学习笔记(下)

  • java启动器_打造java启动器步骤三「建议收藏」

    java启动器_打造java启动器步骤三「建议收藏」一、Java程序的启动过程对于普通用户来说,Java让人不习惯的是程序的启动过程;即使对于富有经验的开发者,为了用默认的装载器启动Java程序,不得不编写大量批命令、脚本文件,不得不在命令行环境下进行大量的复制/粘贴操作,也很容易出现误操作。用惯了Windows方便快捷的GUI,人们早就习惯了通过双击运行程序的方式。对于Java程序,要实现这个本机启动功能就必须编写定制的启动器。用定制启动器启动J…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号