matlab 基本数据分析函数

matlab 基本数据分析函数,第1张

Descriptive Statistics

bootstrp - Bootstrap statistics for any function

corrcoef - Correlation coefficient

cov - Covariance

crosstab - Cross tabulation

geomean - Geometric mean

grpstats - Summary statistics by group

harmmean - Harmonic mean

iqr - Interquartile range

kurtosis - Kurtosis

mad - Median Absolute Deviation

mean - Sample average (in matlab toolbox)

median - 50th percentile of a sample

moment - Moments of a sample

nanmax - Maximum ignoring NaNs

nanmean - Mean ignoring NaNs

nanmedian - Median ignoring NaNs

nanmin - Minimum ignoring NaNs

nanstd - Standard deviation ignoring NaNs

nansum - Sum ignoring NaNs

prctile - Percentiles

range - Range

skewness - Skewness

std - Standard deviation ((in matlab toolbox)

tabulate - Frequency table

trimmean - Trimmed mean

var - Variance (in matlab toolbox)

matlab里大部分函数只支持双精度

mu是正态分布的均值,sig是正态分布的标准差,muci是均值的置信区间,sigci是标准差的置信区间。muci第一行是置信区间的下限,第二行是置信区间的上限;sigci也是具有两行。关于均值、标准差、置信区间概念不清楚的,可以看看随机数学的入门教材。

mse是检验神经网络算法的误差分析。

代码举例:

[x,t] = house_dataset;

net = feedforwardnet(10);

netperformFcn = 'mse'; % Redundant, MSE is default

netperformParamregularization = 001;

net = train(net,x,t);

y = net(x);

perf = perform(net,t,y);

Alternately, you can call this function directly

perf = mse(net,x,t,'regularization',001);

对于简单的数值没有必要用这么复杂神经网络(主要是没法用,mse不是处理简单数据的函数)。

在写《用Matlab演示Parzen窗法》的时候,不知道怎样在m中设计可变参数函数可以阅读一些m自带函数源码,只要将最后一个参数设置为varargin,就可以实现。

例如写了一个函数:function test(varargin)

那么在这个函数里,varargin就是一个cell数组,它包含了用户输入的参数。下面是一个例子:function test(varargin)

disp(['nargin is ' num2str(nargin)])

for v=1:numel(varargin)

disp(['varargin{' num2str(v) '} class is ' class(varargin{v})])

en

完全就是使用cell数组的方法来处理用户输入的个数不定的参数,如果我们这样调用这个函数

>> test()

会得到结果:

nargin is 0

表示用户输入参数个数为0个,就是没有输入参数。

如果这样调用:

>> test(1,'a',uint8(32),'123456');

会得到结果:

nargin is 4

varargin{1} class is double

varargin{2} class is char

varargin{3} class is uint8

varargin{4} class is char

表示用户输入了4个参数,第一个是double类型,第二个是char类型,第三个是uint8类型,第四个也是char类型。

也就是说,只要把函数的参数列表的最后一个参数写成varargin,就可以在函数内部以访问cell数组的方式来获取可变参数的信息。

有了这个varargin,我们就可以改写原来那个Parzen函数了。原来的Parzen函数的最后一个参数是函数句柄,用来传入窗函数,但是也可不指定窗函数,那么Parzen会自动使用正态窗,但是那时不知道使用varargin,于是在使用默认的正态窗时,最后一个参数依然得指定,输入一个[ ]。这样也凑合,能用,但毕竟不优雅。

做最简单的雷达信号仿真,需要使用Parzen窗法估计接收信号的概率密度函数,以使用贝叶斯来确定门限。趁此机会把Parzen函数改写了,如下:

function p=Parzen(xi,x,h1,varargin)

%xi为样本,x为概率密度函数的自变量的取值,%h1为样本数为1时的窗宽,%最后一个参数为窗函数句柄,%不指定则使用正态窗,%返回x对应的概率密度函数值。

n=numel(varargin)

if 0==n

%若没有指定窗的类型,就使用正态窗函数

f=@(u)(1/sqrt(2pi))exp(-05u^2)

elseif 1==n

if isa(varargin{1},'function_handle')

f=varargin{1};

else

disp('The last param must be function handle');

p=[];

return;

end

else

disp('too many param');

p=[];

return;

end;

N=size(xi,2);

hn=h1/sqrt(N);

[X Xi]=meshgrid(x,xi);

p=sum(f((X-Xi)/hn)/hn)/N

题主给出的问题是G=Σcos(x+ib)≤15,且G的方差最小时的n、b值。该问题属于最小值问题,最小值问题可以使用fmincon非线性规划函数求解。求解步骤可以按分五步来做:

第一步:根据G=Σcos(x+ib)方程,建立目标函数,且为最小。即 min G

建立目标函数的关键是,使用for循环语句求解G(i)=Σcos(x+ib),然后用var函数求出G(i)的方差

第二步:根据G≤15条件,建立约束函数。建立约束函数的关键是,使用for循环语句求解G(i)=Σcos(x+ib),使得ΣG(i)≤15

第三步:根据 -π/2≤x ≤ π/2 和 n>1,确定x、n的上限和下限值。即VLB=[1,-pi/2],VUB=[100,pi/2]

第四步:使用fmincon函数求出k值(x、n的值)。即[k,fval,exitflag]=fmincon(@(k)myfun(k),x0,[],[],[],[],VLB,VUB,@(k)mycon(k))

第五步:也就是最关键的一步。验证,求出的x、n值,是否满足G≤15

按照上述步骤要求,进行编程后运行可得如下结果。

n=3,b=16667,G=012908≤15

第一步:根据G=Σcos(x+ib)方程,建立目标函数,且为最小。即 min G

建立目标函数的关键是,使用for循环语句求解G(i)=Σcos(x+ib),然后用var函数求出G(i)的方差

第二步:根据G≤15条件,建立约束函数。建立约束函数的关键是,使用for循环语句求解G(i)=Σcos(x+ib),使得ΣG(i)≤15

第三步:根据 -π/2≤x ≤ π/2 和 n>1,确定x、n的上限和下限值。即VLB=[1,-pi/2],VUB=[100,pi/2]

第四步:使用fmincon函数求出k值(x、n的值)。即[k,fval,exitflag]=fmincon(@(k)myfun(k),x0,[],[],[],[],VLB,VUB,@(k)mycon(k))

第五步:也就是最关键的一步。验证,求出的x、n值,是否满足G≤15

按照上述步骤要求,进行编程后运行可得如下结果。

n=3,b=16667,G=012908

matlab有多少api函数,因为数量很多,而且不同版本的函数数量也或许不一样,因为会把常用的需求去添加成新的api函数,不完全统计,matlab的api函数不少于420个。

例如,下面列举其中的一部分较为常用的api函数。

1

sym函数--定义符号矩阵

2

syms函数--定义矩阵的又一函数

3

sym的另一职能--把数值矩阵转化成相应的符号矩阵

4

cat函数--创建多维数组

5

zeros函数--零矩阵的生成

6

eye函数--单位矩阵的生成

7

ones函数--生成全1阵

8

rand函数--生成均匀分布随机矩阵

9

randn函数--生成正态分布随机矩阵

10

randperm函数--产生随机序列

11

linspace函数--线性等分向量的生成

12

logspace函数--产生对数等分向量

13

blkdiag函数--产生以输入元素为对角线元素的矩阵

14

compan函数--生成友矩阵

15

hankel函数--生成Hankel方阵

16

hilb函数--生成Hilbert(希尔伯特)矩阵

17

invhilb函数--逆Hilbert矩阵生成

18

pascal函数--生成Pascal矩阵

19

toeplitz函数--生成托普利兹矩阵

20

wilkinson函数--生成Wilkinson特征值测试阵

21

dot函数--向量的点积

22

cross函数--向量叉乘

23

conv函数--矩阵的卷积和多项式乘法

24

deconv函数--反褶积(解卷)和多项式除法运算

25

kron函数--张量积

26

intersect函数--求两个集合的交集

27

ismember函数--检测集合中的元素

28

setdiff函数--求两集合的差

29

setxor函数--求两个集合交集的非(异或)

30

union函数--求两集合的并集

31

unique函数--取集合的单值元素

32

expm函数--方阵指数函数

33

logm函数--求矩阵的对数

34

funm函数--方阵的函数运算

35

sqrtm函数--矩阵的方根

36

polyvalm函数--求矩阵的多项式

37

det函数--求方阵的行列式

38

inv函数--求矩阵的逆

39

pinv函数--求矩阵的伪逆矩阵

40

trace函数--矩阵的迹

41

norm函数--求矩阵和向量的范数

42

cond函数--求矩阵的条件数

43

condest函数--1-范数的条件数估计

44

rcond函数--矩阵可逆的条件数估值

45

condeig函数--特征值的条件数

46

rank函数--矩阵的秩

47

diag函数--矩阵对角线元素的抽取

48

tril函数--下三角阵的抽取

49

triu函数--上三角阵的抽取

50

reshape函数--矩阵变维

51

rot90函数--矩阵旋转语法说明

52

fliplr函数--矩阵的左右翻转

53

flipud函数--矩阵的上下翻转

54

flipdim函数--按指定维数翻转矩阵

55

repmat函数--复制和平铺矩阵

56

rat函数--用有理数形式表示矩阵

57

rem函数--矩阵元素的余数

58

sym函数--数值矩阵转化为符号矩阵

59

factor函数--符号矩阵的因式分解

60

expand函数--符号矩阵的展开

61

simple或simplify函数--符号简化

62

numel函数--确定矩阵元素个数

63

chol函数--Cholesky分解

64

lu函数--LU分解

65

qr函数--QR分解

66

qrdelete函数--从QR分解中删除列

67

qinsert函数--从QR分解中添加列

68

schur函数--Schur分解

69

rsf2csf函数--实Schur向复Schur转化

70

eig函数--特征值分解

71

svd函数--奇异值分解

72

gsvd函数--广义奇异值分解

73

qz函数--特征值问题的QZ分解

74

hess函数--海森伯格形式的分解

75

null函数--求线性齐次方程组的通解

76

symmlq函数--线性方程组的LQ解法

77

bicg函数--双共轭梯度法解方程组

78

bicgstab函数--稳定双共轭梯度方法解方程组

79

cgs函数--复共轭梯度平方法解方程组

80

lsqr函数--共轭梯度的LSQR方法

81

qmres函数--广义最小残差法

82

minres函数--最小残差法解方程组

83

pcg函数--预处理共轭梯度方法

84

qmr函数--准最小残差法解方程组

85

cdf2rdf函数--复对角矩阵转化为实对角矩阵

86

orth函数--将矩阵正交规范化

87

sparse函数--创建稀疏矩阵

88

full函数--将稀疏矩阵转化为满矩阵

89

find函数--稀疏矩阵非零元素的索引

90

spconvert函数--外部数据转化为稀疏矩阵

91

spdiags函数--生成带状(对角)稀疏矩阵

92

speye函数--单位稀疏矩阵

93

sprand函数--稀疏均匀分布随机矩阵

94

sprandn函数--生成稀疏正态分布随机矩阵

95

sprandsym函数--稀疏对称随机矩阵

96

nnz函数--返回稀疏矩阵非零元素的个数

97

nonzeros函数--找到稀疏矩阵的非零元素

98

nzmax函数--稀疏矩阵非零元素的内存分配

99

spfun函数--稀疏矩阵的非零元素应用

100

spy函数--画稀疏矩阵非零元素的分布图形

101

colmmd函数--稀疏矩阵的排序

102

colperm函数--非零元素的列变换

103

dmperm函数--Dulmage-Mendelsohn分解

104

randperm函数--整数的随机排列

105

condest函数--稀疏矩阵的1-范数

106

normest函数--稀疏矩阵的2-范数估计值

107

luinc函数--稀疏矩阵的分解

108

eigs函数--稀疏矩阵的特征值分解

109

sin和sinh函数--正弦函数与双曲正弦函数

110

asin、asinh函数--反正弦函数与反双曲正弦函数

111

cos、cosh函数--余弦函数与双曲余弦函数

112

acos、acosh函数--反余弦函数与反双曲余弦函数

113

tan和tanh函数--正切函数与双曲正切函数

114

atan、atanh函数--反正切函数与反双曲正切函数

115

cot、coth函数--余切函数与双曲余切函数

116

acot、acoth函数--反余切函数与反双曲余切函数

117

sec、sech函数--正割函数与双曲正割函数

118

asec、asech函数--反正割函数与反双曲正割函数

119

csc、csch函数--余割函数与双曲余割函数

120

acsc、acsch函数--反余割函数与反双曲余割函数

121

atan2函数--四象限的反正切函数

122

abs函数--数值的绝对值与复数的幅值

123

exp函数--求以e为底的指数函数

124

expm函数--求矩阵以e为底的指数函数

125

log函数--求自然对数

126

log10函数--求常用对数

127

sort函数--排序函数

128

fix函数--向零方向取整

129

roud函数--朝最近的方向取整

130

floor函数--朝负无穷大方向取整

131

rem函数--求余数

132

ceil函数--朝正无穷大方向取整

133

real函数--复数的实数部分

134

imag函数--复数的虚数部分

135

angle函数--求复数的相角

136

conj函数--复数的共轭值

137

complex函数--创建复数

138

mod函数--求模数

139

nchoosek函数--二项式系数或所有的组合数

140

rand函数--生成均匀分布矩阵

141

randn函数--生成服从正态分布矩阵

142

interp1函数--一维数据插值函数

143

interp2函数--二维数据内插值

144

interp3函数--三维数据插值

145

interpn函数--n维数据插值

146

spline函数--三次样条插值

147

interpft函数--用快速Fourier算法作一维插值

148

spline函数--三次样条数据插值

149

table1函数--一维查表函数

150

table2函数--二维查表

151

max函数--最大值函数

152

min函数--求最小值函数

153

mean函数--平均值计算

154

median函数--中位数计算

155

sum函数--求和

156

prod函数--连乘计算

157

cumsum函数--累积总和值

158

cumprod函数--累积连乘

159

quad函数--一元函数的数值积分

160

quad8函数--牛顿康兹法求积分

161

trapz函数--用梯形法进行数值积分

162

rat、rats函数--有理数近似求取

163

dblquad函数--矩形区域二元函数重积分的计算

164

quad2dggen函数--任意区域上二元函数的数值积分

165

diff函数--微分函数

166

int函数--积分函数

167

roots函数--求多项式的根

168

poly函数--通过根求原多项式

169

real函数--还原多项式

170

dsolve函数--求解常微分方程式

171

fzero函数--求一元函数的零点

172

size函数--符号矩阵的维数

173

compose函数--复合函数运算

174

colspace函数--返回列空间的基

175

real函数--求符号复数的实数部分

176

image函数--求符号复数的虚数部分

177

symsum函数--符号表达式求和

178

collect函数--合并同类项

179

expand函数--符号表达式展开

180

factor函数--符号因式分解

181

simplify函数--符号表达式的化简

182

numden函数--符号表达式的分子与分母

183

double函数--将符号矩阵转化为浮点型数值

184

solve函数--代数方程的符号解析解

185

simple函数--求符号表达式的最简形式

186

finverse函数--函数的反函数

187

poly函数--求特征多项式

188

poly2sym函数--将多项式系数向量转化为带符号变量的多项式

189

findsym函数--从一符号表达式中或矩阵中找出符号变量

190

horner函数--嵌套形式的多项式的表达式

191

limit函数--求极限

192

diff函数--符号函数导数求解

193

int函数--符号函数的积分

194

dsolve函数--常微分方程的符号解

195

ezplot函数--画符号函数的图形

196

ezplot3函数--三维曲线图

197

ezcontour函数--画符号函数的等高线图

198

ezcontourf函数--用不同颜色填充的等高线图

199

ezpolar函数--画极坐标图形

200

ezmesh函数--符号函数的三维网格图

201

ezmeshc函数--同时画曲面网格图与等高线图

202

ezsurf函数--三维带颜色的曲面图

203

ezsurfc函数--同时画出曲面图与等高线图

204

fourier函数--Fourier积分变换

205

ifourier函数--逆Fourier积分变换

206

laplace函数--Laplace变换

207

ilaplace函数--逆Laplace变换

208

ztrans函数--求z-变换

209

iztrans函数--逆z-变换

210

vpa函数--可变精度算法计算

211

subs函数--在一符号表达式或矩阵中进行符号替换

212

taylor函数--符号函数的Taylor级数展开式

213

jacobian函数--求Jacobian矩阵

214

jordan函数--Jordan标准形

215

rsums函数--交互式计算Riemann

216

latex函数--符号表达式的LaTex的表示式

217

syms函数--创建多个符号对象的快捷函数

218

maple函数--调用Maple内核

219

mfun函数--Maple数学函数的数值计算

220

mhelp函数--Maple函数帮助

221

sym2poly函数--将符号多项式转化为数值多项式

222

ccode函数--符号表达式的C语言代码

223

fortran函数--符号表达式的Fortran语言代码

224

binornd函数--二项分布的随机数据的产生

225

normrnd函数--正态分布的随机数据的产生

226

random函数--通用函数求各分布的随机数据

227

pdf函数--通用函数计算概率密度函数值

228

binopdf函数--二项分布的密度函数

229

chi2pdf函数--求卡方分布的概率密度函数

230

ncx2pdf函数--求非中心卡方分布的密度函数

231

lognpdf函数--对数正态分布

232

fpdf函数--F分布

233

ncfpdf函数--求非中心F分布函数

234

tpdf函数--求T分布

235

gampdf函数--求Γ分布函数

236

nbinpdf函数--求负二项分布

237

exppdf函数--指数分布函数

238

raylpdf函数--瑞利分布

239

weibpdf函数--求韦伯分布

240

normpdf函数--正态分布的概率值

241

poisspdf函数--泊松分布的概率值

242

cdf函数--通用函数计算累积概率

243

binocdf函数--二项分布的累积概率值

244

normcdf函数--正态分布的累积概率值

245

icdf函数--计算逆累积分布函数

246

norminv函数--正态分布逆累积分布函数

247

sort函数--排序

248

sortrows函数--按行方式排序

249

mean函数--计算样本均值

250

var函数--求样本方差

251

std函数--求标准差

252

nanstd函数--忽略NaN计算的标准差

253

geomean函数--计算几何平均数

254

mean函数--求算术平均值

255

nanmean函数--忽略NaN元素计算算术平均值

256

median函数--计算中位数

257

nanmedian函数--忽略NaN计算中位数

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/12186233.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-21
下一篇2023-05-21

发表评论

登录后才能评论

评论列表(0条)

    保存