MATLAB:如何取矩阵a[1,2,3,4,5,6,7,8,9]的某3列,产生一个新的带有未知变量的列矩阵,如b=a[x:(x+3),1].
结果是得到一个带有未知变量x的矩阵,而不是某一个矩阵。这个矩阵要与其他矩阵c进行运算,目的求取:a中取得哪3个值得到b,使得其与c的运算结果最大。不能直接写:b=a[x:...
结果是得到一个带有未知变量x的矩阵,而不是某一个矩阵。这个矩阵要与其他矩阵c进行运算,目的求取:a中取得哪3个值得到b,使得其与c的运算结果最大。
不能直接写:b=a[x:(x+3),1].会提示出错:下标索引必须为正整数类型或逻辑类型。 展开
不能直接写:b=a[x:(x+3),1].会提示出错:下标索引必须为正整数类型或逻辑类型。 展开
展开全部
首先,a[1,2,3,4,5,6,7,8,9]不是正确的表达方法,若表示a中的9个元素,可这样:a(1:9)
若表示a是9列的任一矩阵,可这样:a=100*rand(9);
再者,b=a[x:(x+3),1]不是正确的表达式,可这样:x=3;b=a(x:(x+3),1),但得到的b是3行,不是3列,要得到3列,可这样:x=3;b=a(:,x:(x+3))
若表示a是9列的任一矩阵,可这样:a=100*rand(9);
再者,b=a[x:(x+3),1]不是正确的表达式,可这样:x=3;b=a(x:(x+3),1),但得到的b是3行,不是3列,要得到3列,可这样:x=3;b=a(:,x:(x+3))
追问
我想让x值不确定,以求取b选取哪3行时,满足后续运算的条件。
我问的问题确实有问题,行和列弄混了。
谢谢你的回答,我已经找到了方法。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询