统计频数直方图
x=1:14;
freqy=[1 0 1 4 3 5 0 0 1 0 1 1 0 1];
subplot(1,3,1); bar(x,freqy); xlim([0 15]);
subplot(1,3,2); area(x,freqy); xlim([0 15]);
subplot(1,3,3); stem(x,freqy); xlim([0 15]);
这里,freqy是频数数组
下图从左到右分别是bar
,area
,stem
的样式
tabulate
对于一般的数据,我们可以首先统计频数,再绘图。
使用tabulate
函数创建向量X信息数据频率表
tbl = tabulate(x)
创建的TBL(数据频率表)的结构:
- 第一列:x的唯一值
- 第二列:每个值的实例数量
- 第三列:每个值的百分比
例如
data=[1 9 14 8 5 4 5 4 1 1 1 8 5 55 6 8 8 8 2 0 0 0];
A=tabulate(data);
bar(A(:,1)',A(:,2)');
histogram
或者直接用histogram
函数画直方统计图
例如
data=[1 9 14 8 5 4 5 4 1 1 1 8 5 55 6 8 8 8 2 0 0 0];
histogram(data);
Boxplot
箱形图提供了一种只用5个点对数据集做简单总结的方式。这5个点包括中点、Q1、Q3、分部状态的高位和低位。
例如
marks=[99 95 88 87 91 93 96 94 96 92 98 96];
boxplot(marks);
prctile(marks , [25 50 75] )
prctile(marks , [25 50 75] )
ans =
91.5000 94.5000 96.0000
例如prctile
函数就可以得到boxplot图中25%,50%,75%的点的数值了。
skewness
偏态系数
我们可知
-
Left-skewed
:skewness<0 -
Right-skewed
:skewness>0
实例代码
X=randn([10 3])*3;
X(X(:,1)<0,1)=0;
X(X(:,3)>0,3)=0;
boxplot(X,{'Right-skewed','Symmetric','Left-skewed'});
y=skewness(X)
偏态的结果:(符合之前skewness
的结论)
y =
1.0487 0.2193 -1.5381
Kurtosis
峰态系数
随机变量在均值附近的相对平坦程度或峰值程度,以正态分布为界,峰度值为0,如比正态分布陡,峰度值大于0,否则小于0.
网友评论