MATLAB 数据统计分析
求矩阵的最大元素和最小元素。
eg:求向量X的最大元素,其中X=[-43,72,9,16,23,47]。
x=[-43,72,9,16,23,47];
y=max(x)
[y,k]=max(x)
eg:
A=[13,-56,78;25,63,-235;78,25,563;1,0,-1];
max(A)
max(A,[],2)
max(max(A))
求矩阵的平均值和中值:
%平均值:指算术平均值,及每项数据之和除以项数。
%中值:指在数据序列中其值的大小恰好处在中间的元素。如果数据个数为奇数,则取值为大小位于中间的元素;如果数据个数为偶数,则取中间两个元素的平均值。
%平均值容易受极端数据影响。
mean():求算术平方根
median():求中值
eg:
x=[1200,800,1500,1000,5000];
mean(x)
median(x)
求和与求积:
sum():求和函数
prod():求积函数
累加和与累乘积:
cumsum():累加和函数
cumprod():累乘积函数
eg:求向量X=[1,2,3,4,5,6,7,8,9,10]的积与累乘积。
X=[1,2,3,4,5,6,7,8,9,10];
y1=prod(X)
y2=cumprod(X)
eg:标准差与相关系数
std():计算标准差函数。
eg:生成满足正态分布的50000*4随机矩阵,用不同形式求其各列之间的标准差。
x=randn(50000,4);
y1=std(x,0,1)
y2=std(x,1,1)
x1=x';
y3=std(x1,0,2);
y3'
y4=std(x1,1,2);
y4'
corrcoef(): 相关系数函数。
eg:
A=[5032,6000,5100,5200;6532,6500,6600,5800;5500,7000,5400,4800;4530,4000,4300,4200;
2300,2000,2200,2500;3254,3000,3500,3000;8095,9000,7800,8500;7530,8000,7000,7500;
3841,3200,3500,3200;4500,5200,4800,4000];
corrcoef(A)
排序:
sort():排序函数
eg:
A=[1,-8,5;4,12,6;13,7,-13];
sort(A)
sort(A,2,'descend')
[X,I]=sort(A)