从Matlab矩阵中导出某些列

时间:2014-08-28 14:42:27

标签: matlab matrix

我有一个Matlab矩阵,想知道是否有办法从中提取某些列来制作新的矩阵。

例如,如果我有一个矩阵;

  

数据= 1:20

我想从第1,2,9,10列导出数据并制作一个新的矩阵文件。

我想将其扩展到大约4,400列的矩阵...所以如果有一种方法可以在定义的点(例如每个第8和第9列)选择列,那么这将是超级的!

非常感谢任何帮助!

谢谢, AJ

2 个答案:

答案 0 :(得分:1)

您提供的示例可以这样完成:

x=data([1,2,9,10]);

你可以像这样得到每一个第8列:

index=8;
x=data(index:index:end);

如果您想要每个第8和第9列并维持订单:

index1=8;
index2=9;
x=data(sort([index1:index1:end index2:index2:end]));

答案 1 :(得分:0)

如果你还想抓住单个列或行,可以使用类似的进程然后将其连接成矩阵

x=data(:,2) % get the 2nd column

y=data(:,8) % get the 8th 

z=[x;y] or z=[x:y] % combine them 

如果您的表是标准的,您可以在一个小脚本中预定义它们