matlab如何合并矩阵两列为一列?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab如何合并矩阵两列为一列?相关的知识,希望对你有一定的参考价值。
123 345 (矩阵两列)合并为123 456(矩阵一列)
参考技术A 按你的要求,你把矩阵组变为字符串元胞数组去处理吧a是你原来的矩阵33x2
b=num2str(a); 是33xn的矩阵,n由原来字符的长度决定
c=cellstr(b); 是33x1的字符串元胞数组
tabulate(c) 可以出你要的结果本回答被提问者和网友采纳 参考技术B 分三种情况:
1.如果矩阵是两列,要合并为1列,可:
a=randn(4,2);
b=a(:)
2.如果矩阵是多列,且是偶数列,要合并为半偶数列,可:
a=randn(4,8)
b1=[a(:,1);a(:,2)];
for
i=1:1:(8/2-1)
b1=[b1,[a(:,2*i+1);a(:,2*i+2)]];
end
b1
3.如果矩阵是多列,且是奇数列,则不能得到合适的合并。
因为会剩1列不能合并。 参考技术C 或者reshape也行:
M1 = reshape(M, [], 1); 参考技术D M = [1 2 3; 4 5 6];
M = M(:);
M = M'
在R中如何输出矩阵,第一列和第二列的数为指定数字
即第一列均输出m,第二列为其余数字
参考技术A aa=1-100000001-100000001-100000001-100000001-100000001-100000001-100000001>>bb=0.09680.12000.16670.12500.12500.12501.50010.2500>>[indRow,indCol]=find(a==1);>>forirow=1:length(indRow)a(indRow(irow),indCol(irow))=b(indRow(irow));end>>aa=0.0968-1.000000000000.1200-1.000000000000.1667-1.000000000000.1250-1.000000000000.1250-1.000000000000.1250-1.000000000001.5001-1.000000000000.2500以上是关于matlab如何合并矩阵两列为一列?的主要内容,如果未能解决你的问题,请参考以下文章