Matlab中(:,1)和(:,end)和[~, A]的含义与用法

这篇具有很好参考价值的文章主要介绍了Matlab中(:,1)和(:,end)和[~, A]的含义与用法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

背景

阅读Moses Chong-ook Nah的DMP-MATLAB程序记录。
github链接:https://github.com/mosesnah-shared/DMP-MATLAB
如果不知道某个函数或变量的作用,直接打印出来,看看输出是什么。不知道matlab如何打印?程序后面的分号;去掉就可以将结果打印在命令行窗口。

一、(:,1)的含义与用法

1、当A是数组时,A(:,1)就是取数组A的第1个数(这里和其他语言如python不一样,他们第一个数是从0开始检索),Matlab验证:
A = [7,3,1,4,6,2,1]
a1 = A(:,1)

注意:这里程序后面不加分号;,这样可以在命令行窗口直接打印出来A和a1

运行结果:

matlabf(:,end)是什么意思,matlab,开发语言

2、当A是矩阵时,A(:,1)就是取矩阵A的第1列,Matlab验证:
A = [7,3,1;4,6,2;1,8,7]
a1 = A(:,1)

注意:Matlab输入矩阵时,分号;隔开的行

运行结果:
matlabf(:,end)是什么意思,matlab,开发语言

二、(:,end)的含义与用法

1、当A是数组时,A(:,end)就是取数组A的最后1个数,Matlab验证:
A = [7,3,1,4,6,2,1]
a1 = A(:,end)

运行结果:

matlabf(:,end)是什么意思,matlab,开发语言

2、当A是矩阵时,A(:,end)就是取矩阵A的最后1列,Matlab验证:
A = [7,3,1;4,6,2;1,8,7]
a1 = A(:,end)

运行结果:

matlabf(:,end)是什么意思,matlab,开发语言

三、size(A)的含义与用法

1、得到A的维度大小,当A为一元数组时:

A = [7,3,1,4,6,2,1,8,7]
size(A)

得到结果为:

ans =

     1     9

2、当A为矩阵时:

A = [7,3,1;4,6,2;1,8,7]
size(A)

得到结果为:

ans =

     3     3

四、[~, A_total]的含义与用法

A_total可以打印出 = 后面的维度大小,是一个数字,例如:

A = [7,3,1,4,6,2,1,8,7,5,9]
size(A)
[ ~, A_total ] = size(A)

打印结果为:

A_total =

    11

解释:正如第三节讲的,size(A)的作用是打印A的维度,就算一维向量,打进结果也是ans = 1 11,而[ ~, A_total ]是得到A_total具体一个数值,如本例题中的11

五、max()的含义与用法

max(A)找到A中最大的数字

六、1 : nP_step : P_total的含义与用法

这里nP_step是间隔某个距离取一个数,相当于将数据压缩,不使用所有数据,例如:

p_des = [1.13, 1.16, 1.19, 1.22, 1.25, 1.28, 1.31, 1.34, 1.37, 1.40, 1.43, 1.46]

[ ~, P_total ] = size( p_des )

% Don't need to use all the data
nP_step = 3;
idx = 1 : nP_step : P_total

% The number of data points for Imitation Learning
P = length( idx )

% Get the goal location as the final position
g = p_des( :, idx( end ) )

解释:
1.这里idx输出的是一组压缩后数据的索引(不是具体数值,而是坐标索引,例如原数据的第几个),输出结果为idx = 1 4 7 10
2.P = length( idx )计算压缩后数据的长度,结果为P = 4
3.idx( end )得到的是idx最后一个索引标签,结果为10
4.g = p_des( :, idx( end ) )得到的是数据压缩后的最后一个数,结果为g = 1.4000

特别注意:这里解释1和解释3结果都为索引,只有解释4才为具体数值。文章来源地址https://www.toymoban.com/news/detail-813369.html

到了这里,关于Matlab中(:,1)和(:,end)和[~, A]的含义与用法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Matlab相机标定方法及主要参数含义,坐标变换过程

    网上有很多关于matlab相机标定的资料,但找了很久没有相应的参数说明:怎样利用获得参数从世界坐标系变换到图像坐标系,所以这里为了记录一下,也方便新人理解。 首先由图像到参数的获取部分在网上有很多资料,也很容易,在这就不再赘述,我利用的标定板的格子大小

    2024年02月05日
    浏览(45)
  • MATLAB使用hough变换函数输出[H,theta,rho]的具体含义

    输出[H,theta,rho]。 其中Theta 取值-90至89,为1×180的数组。 rho取值根据图片f的大小确定,如图片为400×400像素,则rho取值-(400^2+400^2)^0.5至(400^2+400^2)^0.5,即图片的对角线长度,为1×1131的数组。 Theta,rho仅为hough变换的坐标取值。hough变换的结果储存于输出的H矩阵中。 H矩阵为rho×

    2024年02月06日
    浏览(39)
  • send()函数的用法;MSG_NOSIGNAL什么含义?有什么作用?以及flags中参数类型有哪些各自又起到什么作用?

    目录  1.send()函数的基本用法(入门级): 2.MSG_NOSIGNAL什么含义?有什么作用? 3.send()函数中第4个flags中参数类型有哪些各自又起到什么作用? send() 函数是一个用于在 TCP/IP 网络上发送数据的系统调用函数。它通常在客户端和服务器端程序中被使用。 send() 函数的语法如下: 其

    2024年02月07日
    浏览(44)
  • 什么是原型链(Prototype Chain)?它在JavaScript中有什么作用?请解释一下JavaScript中的“this”关键字的含义和用法。

    原型链(Prototype Chain)是一种在JavaScript中创建对象的方式,它允许我们通过继承来扩展对象的属性和方法。 在原型链中,每个对象都有一个原型对象(也称为“原型”或“ proto ”),该对象继承了其父对象的属性和方法。当我们在一个对象上定义一个属性或方法时,如果该

    2024年02月11日
    浏览(58)
  • 【matlab】matlab中plot的功能及其用法

             matlab中plot的功能主要是二维曲线绘图,用法为:如果 X 和 Y 都是向量,则它们的长度必须相同。plot 函数绘制 Y 对 X 的图。如果 X 和 Y 均为矩阵,则它们的大小必须相同。plot 函数绘制 Y 的列对 X 的列的图。 如果 X 或 Y中的一个是向量而另一个是矩阵,则矩阵的各

    2024年02月12日
    浏览(42)
  • 【CSS】flex布局用法解析,快速上手flex布局,flex:1是什么意思?肯定看的懂好吧?

    flex 是 flexible box 的缩写,意为\\\"弹性布局\\\",用来为盒状模型提供最大的灵活性。 任何一个容器都可以指定为 flex 布局。 采用 flex 布局的元素,称为 flex 容器(flex container),简称\\\"容器\\\"。 flex-direction 属性决定主轴的方向(也就是元素的排列方向),与主轴垂直的轴是交叉轴。

    2024年02月03日
    浏览(51)
  • Matlab 中@ 的用法

            Matlab 中@的用法主要有:函数句柄、函数表达式、调用父类以及类文件夹。         前两种有很多介绍,后两种涉及类,介绍的人很少。前2个例子,参考了其它博客,总感觉@用法都写的不全,所以在此基础上,补充了3、4 。感兴趣的,可以去看看徐潇编著的《

    2024年02月06日
    浏览(40)
  • MATLAB中mse函数用法

    目录 语法 说明 示例 使用 mse 性能函数训练神经网络         mse函数的功能是均方归一化误差性能函数。 提示         要在深度学习中使用均方误差,请使用 regressionLayer,或使用 dlarray 方法 mse。 perf = mse(net,t,y,ew) 采用神经网络 net、目标矩阵或元胞数组 t、输出矩阵

    2024年02月08日
    浏览(47)
  • 【MATLAB】find函数及其用法

            返回一个包含数组 X 中每个 非零元素的线性索引向量 。         如果 X 为向量,则 find 返回方向与X相同的向量。如果 X 为多维数组,则 find 返回由结果的 线性索引组成的列向量 。如果 X 包含非零元素或为空,则 find 返回一个空数组。         线性索引组

    2023年04月09日
    浏览(45)
  • MATLAB中quiver函数用法

    目录 语法 说明 示例 创建箭头图 禁用自动缩放 绘制梯度和等高线 指定箭头颜色 指定箭头图的坐标区 在创建后修改箭头图         quiver函数的功能是绘制箭头图或向量图。 quiver(X,Y,U,V)  在由 X 和 Y 指定的笛卡尔坐标上绘制具有定向分量 U 和 V 的箭头。例如,第一

    2024年02月08日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包