
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
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计算中位数
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)