matlab中,X2:2:10) = []是什么意思?

 我来答
左丘奕l4
推荐于2018-01-20 · TA获得超过118个赞
知道答主
回答量:67
采纳率:0%
帮助的人:41.7万
展开全部

整句话的大致意思就是删除矩阵的某些元素,并把剩下的元素重新整合为一个向量。具体删哪些元素得看括号里的。

这也涉及到单下标索引。比如A是一个4*4的矩阵,那么A(8)指的是A(4,2)。那么题主的X(2:2:10)的括号里就是指从第二个到第十个、每两个删一个。。。。

就会变成

tianxiawulang
2016-09-20 · TA获得超过2.7万个赞
知道大有可为答主
回答量:4732
采纳率:89%
帮助的人:2645万
展开全部

你的提问涉及到两个问题:

 

1、数组的单下标索引。

对于MATLAB中任意维数的数组,都可以使用单个下标对数组元素进行索引,有点类似于C语言中的指针。但需要注意的是,MATLAB的数组是以列序为主序的,这一点和C语言不同。也就是说,MATLAB中A(2)、A(3)表示的是A(2,1)、A(3,1),而不是A(1,2)、A(1,3)。

 

2、对数组的部分元素赋值为空数组可以删除该部分元素。

需要注意,以单下标索引的方式删除元素,由于处理后不一定能满足矩阵的要求,所以得到的结果是一维数组。

 

就题主的例子而言,贴出的结果是错误的:

>> X =[16  3    2   13   0;5 10 11  8    0;9 6 7 12   0;4 15 14   1   17]
X =
    16     3     2    13     0
     5    10    11     8     0
     9     6     7    12     0
     4    15    14     1    17
>> X(2:2:10)=[]
X =
    16     9     3     6     2     7    14    13     8    12     1     0     0     0    17

 显然与题主贴出的结果不一致。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
舒坦且文质彬彬的百花d
2016-09-19 · TA获得超过1775个赞
知道小有建树答主
回答量:370
采纳率:0%
帮助的人:40.6万
展开全部
矩阵的第一列分别为2,4,6,8,10
追问
后面有个空矩阵啊,应该是表示删除的意思。它原矩阵是
X =

16 3 2 13 0

5  10 11 8 0

9  6  7 12 0

4  15 14 1 17
X(2:2:10)
= [] %单下标可以删除某元素

results in

X =

16 9 2 7 13 12 1
怎么算出来的?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式