![](https://img-blog.csdnimg.cn/20201113111953590.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Matlab学习
对学习过程中用到一些matlab知识的记录
打呼噜的星.
Take Your Time.
展开
-
matlab中nchoosek函数的用法
格式:【m,n】=nchoose[v,k]作用:v表示一个行向量,表示从v包含的n个元素中取k个的排列组合,返回一个m*n矩阵。其中m=n!/(n-k)!*k!, n=k。代码&运行结果:>> c=nchoosek(7:3:22,4)c = 7 10 13 16 7 10 13 19 7 10 13 22 7 10 16 19 7 10 16原创 2021-03-17 10:39:10 · 3305 阅读 · 0 评论 -
matlab中cell函数使用
cell为mtalab提供的一种数据类型。语法:x=cell(m,n) 表示创建m*n的cell类型数据。每个单元都是独立的,可以存储任何数据。x=cell(2,3)x{1,1}=[1,3,4,5,6]x{1,2}=['J','e','r','r','y']x{1,3}=50x{2,1}=[4 5;6 7]x = 2×3 cell 数组 [1×5 double] 'Jerry' [50] [2×2 double] [] []访问:x原创 2020-12-22 18:16:03 · 7806 阅读 · 3 评论 -
matlab中rand函数使用
rand作用:产生(0,1)之间均匀分布的随机数和矩阵。主要由输入的参数决定。randn作用:生成标准正态分布的伪随机数(均值为0,方差为1).语法和rand一样语法作用x=rand返回区间(0,1)内均匀分布的随机数rand(n)返回n*n的随机矩阵rand(m,n) 或rand([m,n]返回m*n的随机矩阵rand(sz1,sz2,szN)返回由随机数组成的sz1*sz2*…*sz维数组rand(size(A))返回和A由相同尺寸的随机矩阵原创 2020-12-22 17:13:21 · 29675 阅读 · 3 评论 -
MATLAB中linspace函数使用
格式:linspace(x1,x2,N)功能:用于产生x1,x2之间的N点行矢量。其中x1,x2为起始值,N为元素个数。如果缺省N,默认N=100.x=linspace(1,10,10);的效果和x=[1:1:10]类似>> x1=[1:1:10]x1 = 1 2 3 4 5 6 7 8 9 10 >> x2=linspace(1,10,10); >> x2x2原创 2020-12-11 11:48:07 · 3479 阅读 · 0 评论 -
MATLAB中subplot函数使用
格式:subplot(m,n,p) 或 subplot(m n p)将多个图显示到一个平面上的函数。其中m,n表示窗口被分为m*n块区域,p表示当前图所在位置。p=1表示从左到右从上到下的第一个位置.clear;subplot(2,3,1);%第一块绘图x=[0.1000,0.0500,0.0100,0.0050];hv= [0.4742 0.5203 0.4863 0.4808 0.4033 0.4782 0.3993 0.4846 0.482原创 2020-12-10 20:45:13 · 3988 阅读 · 0 评论 -
matlab中的~用法和~=
用法1:表示非(与java中的!类似)if ~flagcount++;end用法2:忽略函数返回的某个参数。比如size函数有两个返回值,而我们只需要第个参数。则[m,n]=size(A);%返回矩阵A的行和列[m,~]=size(A);ps:看程序看到一段sum([1 2 3 4]~=[2 3 1 4])。分开来看 里面的~=返回的是个逻辑数组[1110],每个值对应的是向量中元素是否相等,相等为0,否则为1.整个意思就是得到两向量中不同元素的个数。在命令行输入验证...原创 2020-11-17 10:59:59 · 25163 阅读 · 1 评论 -
java中产生指定范围内的随机数
1.Math.random()方法返回一个[0.0,1)的伪随机double类型的随机数2.符合在[min,max]范围内的数int num = min + (int)(Math.random() * (max-min+1));double num = min + (Math.random() * (max-min+1));3.用nextInt方法生成区间范围内的随机整数Random rand=new Random(); int n1=rand.nextInt(1原创 2020-11-17 09:59:38 · 38220 阅读 · 5 评论 -
轮盘赌算法的简单说明
轮盘赌算法经常用于遗传算法中来进选择。基本思想:各个个体被选中的概率与其适应度成正比(适者生存)。主要步骤如下:1.计算种群中每个个体被选中的概率(在遗传算法中根据适应度来决定选择概率)。2.计算个体的累积概率3.产生[0,1]之间的随机数ran,与累计概率进行比较,若rand<cum_p[i],则本次选择个体i.matlab代码如下:function i=RouletteWheelSelection(p) r=rand; c=cumsum(p); i原创 2020-11-16 22:16:00 · 2315 阅读 · 0 评论 -
matlab中find函数使用
find函数简介:基本功能是返回向量或者矩阵中不为0的元素的位置索引。具体用法示例如下:示例1:find(A) 返回向量中非0元素的位置示例2:find(A,k) 返回前k个不为0的元素 find(A,k,'last')返回后k个不为0的元素A表示向量示例3:当A为矩阵时,可以看到返回的是矩阵中非0元素的下标【注:matlab中存储矩阵式是按列存储的。比如A(4)对应元素为1 A(5)为2】当按照行列的索引返回时候,[I,J]=find(A) 其中I中是行号,J中为列号,I和..原创 2020-11-13 20:40:11 · 2751 阅读 · 0 评论 -
matlab中cumsum函数的使用
cumsum函数通常用于计算矩阵中按行或列进行累加求和。计算累加函数后的结果数量和输入元素的数量一样。一般用法如下:cum(A,dim) cumsum(A)【注】cumsum累加函数默认是按照列进行计算的A = 1 2 3 4 5 6 7 8 9>>B=cumsum(A)B = ...原创 2020-11-13 17:13:56 · 14563 阅读 · 0 评论 -
matlab中sub2ind方法的使用
su2ind函数是对矩阵索引号检索的函数,ans=sub2ind(size,I,J) 其中第一个参数size表示矩阵的行数和列数,I是转换矩阵的行标,J是转换矩阵的列标。I和J的行列数必须相同。最终结果ans对应I,J对应行列在整个矩阵中的索引。在命令窗口中输入验证:实例1>> sub2ind([10 10],9,2)ans=19表示求一个10*10矩阵中,第9行第2列对应的元素在整个矩阵中的索引。输出结果为19实例2>> B=magic(5)B =.原创 2020-11-13 16:23:31 · 6442 阅读 · 0 评论