MATLAB中出现了 Error using vertcat Dimensions ofunitary matricess being concatenated are not consistent.

Matlab合并矩阵_百度知道
Matlab合并矩阵
现在有个testfile.txt文件,内容如下:1
4是个4*4矩阵,tab delimitertest=dlmread('testfile.txt','\t')我现在希望得到的结果是:当test(:,2)==1 (当读到testfile.txt内第二列有1的时候)在第二列的右侧,插入新的一列,新的一列包含新的矩阵x=[1
3] 如下:1
4当test(:,2)==2 (当读到testfile.txt内第二列有2的时候)在第二列的右侧,插入新的一列,新的一列包含新的矩阵y=[2
5] 如下:1
所以新的矩阵应该是这样1
我有更好的答案
按默认排序
类似于这样的?a = [1 1 3 4;
4 2 3 4];b =
repmat((a(:,2)==1),1,4).*repmat([1 1 0 3],4,1)
+ repmat((a(:,2)==2),1,4).*repmat([2 3 4 5],4,1);c = [a(:,1:2),b,a(:,3:4)];
如果你说的是: “A=[a1,a2],B=[b1,b2] 合并成C=[a1,a2,b1,b2] 其中a1,a2,b1,b2都为列向量”的话 那么只需在matlab中输入如下就好: C=[A,B] 而如果你说的是: “A=[a1,a2],B=[b1,b2] 合并成C=[a1,a2;b1,b2] 其中a1,a2,b1,b2都为列向量”的话 那么就要在matlab中输入如下才行: C=[A;B]
问题应该不是在这里我需要的是在一个4*4的矩阵里,当检测到某列有特定的数字时,在其右列插入一个1*4的矩阵,因为矩阵大小不一样,matlab会显示Error using horzcatDimensions of matrices being concatenated are notconsistent.
其他类似问题
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁推荐这篇日记的豆列
······查看: 2849|回复: 10
用请教,Matlab软件对DEA评价模型进行数据计算,程序出现...
本帖最后由 柚籽 于
18:20 编辑
DMUX1X2X3X4X5Y1Y2DMU15317300394906.8312.11.8029170.9DMU259205181356615.616.73.7231302DMU3101989122110.9510.70.300248.2DMU43911739301214.0712.12.526140DMU515011970030019195.698.27.27583173.9DMU612913143923620409.7617.56.93921471.9DMU7693005523911502.06102.232257DMU899327147411307.2816.44.531158.8DMU97933990766150.216.33.37640不知道哪步代码出问题了,请高手们指正,谢谢您了!
X=[ 53& && & 17300& && & 39& &&&4906.83& &12.159& &;&&20518& && & 135&&6615.6& && &16.710& &&&1989& && & 12 ;& & 2110.95& &10.739& &&&11739& && & 30& &&&1214.07& &12.1;150&&119700& &&&300&&.2;129&&131439& &&&236&&.5;69& &&&30055& && & 239&&;99& &&&32714& && & 74& &&&.4;79& &&&33990& && & 76& &&&6150.2& && &16.3];Y=[Y=[ 1.8029& && &&&170.9; 3.723& && &&&1302;0.3002& && &48.2;2.526& && &&&140;7.2758& && &3173.9;6.9392& && &1471.9;2.23 2257;4.53 1158.8;3.37 640];n=size(X',1)m=size(X,1)s=size(Y,1)f=[zeros(1,n+m+s),1];A=eye(n+m+s+1);b=ones(n+m+s+1,1);B=[X,Y];temp=[eye(m),zeros(m,s),zeros(s,m),-eye(s)];
B=[B,temp];
LB=zeros(n+m+s+1,1);UB=[inf];for i=1:n;Aeb=[B,-[X(:,i)',zeros(s,1)']'];beq=[zeros(m,1);Y(:,i)];w(:,i)=linprog(f,A,b,Aeb,beq,LB,UB);endw
代码没法直接拷贝运行
柚籽 发表于
代码没法直接拷贝运行
在这格式变了,原来运行程序报错是这样的:??? Error using ==& vertcat
CAT arguments dimensions are not consistent.
可以留个联系方式吗,我把原文件发给您,您帮忙看看,谢谢您了,我的qq是,邮箱
RE: 请教,用Matlab软件对DEA评价模型进行数据计算,程序出现...
柚籽 发表于
代码没法直接拷贝运行
我重新输入一下,您再帮忙看看,谢谢您了!
X=[ 53& & & & 17300& & & & 39& & & & 4906.83& & & & 12.1
59& & & & 20518& & & & 135& & & & 6615.6& & & & 16.7
10& & & & 1989& & & & 12& & & & 2110.95& & & & 10.7
39& & & & 11739& & & & 30& & & & 1214.07& & & & 12.1
150& & & & 119700& & & & 300& & & & 19195.69& & & &&&8.2
129& & & & 131439& & & & 236& & & & 20409.76 & & & & 17.5
69& & & & 30055& & & & 239& & & & 11502.06& & & &&&10
99& & & & 32714& & & & 74& & & & 11307.28& & & &&&16.4
79& & & & 33990& & & & 76& & & & 6150.2& & & &&&16.3];
Y=[1.8029& & & & 170.9
3.723& & & & 1302
0.3002& & & & 48.2
2.526& & & & 140
7.2758& & & & 3173.9
6.9392& & & & 1471.9
2.23& & & &&&2257
4.53& & & &&&1158.8
3.37& & & &&&640];
n=size(X',1)
m=size(X,1)
s=size(Y,1)
f=[zeros(1,n+m+s),1];
A=eye(n+m+s+1);
b=ones(n+m+s+1,1);
temp=[eye(m),zeros(m,s),zeros(s,m),-eye(s)];
B=[B,temp];
LB=zeros(n+m+s+1,1);
for i=1:n;
Aeb=[B,-[X(:,i)',zeros(s,1)']'];
beq=[zeros(m,1);Y(:,i)];
w(:,i)=linprog(f,A,b,Aeb,beq,LB,UB);
黑色的光亮 发表于
在这格式变了,原来运行程序报错是这样的:??? Error using ==& vertcat
CAT arguments dimensions are n ...
其实你的错误代码还有一句吧,
Error using horzcat
Dimensions of matrices being
concatenated are not
consistent.
Error in Untitled (line 31)
Aeb=[B,-[X(:,i)',zeros(s,1)']'];
你直接点到这一行,设置一个断点,
再运行到这一句之前停止,
你直接在命令行输入这些变量名,一个一个看你组合的B&&-[X(:,i)',zeros(s,1)']'
的尺寸,看是否能如你所期望的接起来。
-[X(:,i)',zeros(s,1)']'&&18*1
这俩是不能像你的那样拼接起来的
柚籽 发表于
其实你的错误代码还有一句吧,
Error using horzcat
Dimensions of matrices being
可能版本不一样,错误代码就只有那些。万分感谢您的意见,愿您一切顺利!
黑色的光亮 发表于
可能版本不一样,错误代码就只有那些。万分感谢您的意见,愿您一切顺利! ...
哦,是嘛,请问下你的版本是哪一个我去测一下。谢谢
柚籽 发表于
哦,是嘛,请问下你的版本是哪一个我去测一下。谢谢
R2011a,麻烦您了
兄弟结果怎么样?
我碰到类似的运用,正在学习中……急切想知道结果啊
站长推荐 /1
Powered by在MATLAB中出现这个:Dimensions of matrices being concatenated are not consistent.是什么问题?_百度知道
在MATLAB中出现这个:Dimensions of matrices being concatenated are not consistent.是什么问题?
程序是这个样子[x,y]=meshgrid(1:10);
h=[0,0.02,-0.12,0,-2.09,0,-0.58,-0.08,0,0;...
0.02,0,0,-2.38,0,-4.96,0,0,0,-0.1;...
0,0.1,1.00,0,-3.04,0,-0.53,0,0.1,0;...
0,0,0,3.52,0,0,0,0,0;...
-0.43,-1.98,0,0,0,0.77,0,2.17,0,0;...
0,0,-2.29,0,0.69,0,2.59,0,0.30,0;...
-0.09,-0.31,0,0,0,4.27,0,0,0,-0.01;...
0,0,0,5.13,7.40,0,1.89,0,0.04,0;...
0.1,0,0.58,0,0,1.75,0,-0.11,0,0;...
0,-0.01,0,0,0.3,0,0,0,0,0.01];
[xi,yi]=meshgrid(1:0.1;10);
hi=interp2(x,y,h,xi,yi,'spline');
xlabel('x'),ylabel('y'),zlabel('h');无法运行,出现了这样的提示:Error using vertcat
Dimensions of matrices being concatenated are not consistent.
我有更好的答案
按默认排序
h 里面的每行的数,个数都不一样,仔细数一数
我发现错误了,有两个小错误,已经改了,谢谢
其他类似问题
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁数学建模Matlab线性规划问题求助_百度知道
数学建模Matlab线性规划问题求助
f=[-170.4 -41.2 -131.];
A=[1 -0.14 0 1 0;0 0.4 0 0 0;1 0.32 1 0 0 0;0 1 0 0 0 0;0 0 1 1 0 0;0 0 0-1 -1 0];
b=[0;805;;0000];
Aeq=[0 0 0 0 0 1];
lb=[0;0;0;0;0;0];
[x,fval,exitflag,output,lambda]=linprog(f,A,b,Aeq,beq,lb,[])Error using vertcatDimensions of matrices being concatenated are not consistent. 为什么会出现ERROR错误不可运行?求助大神
提问者采纳
A 输入的有问题,最后三个值不要另起一行,接着后面的值输入其它的没问题
提问者评价
其他类似问题
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 vertcat 的文章

 

随机推荐