在Matlab中将三列数据帧重塑为矩阵

时间:2012-05-15 15:06:36

标签: matlab matrix

在MATLAB中,我的数据如下:

    5 7 1 
    5 8 2 
    5 9 3 
    6 7 3 
    6 8 3 
    6 9 2 

其中每列是一个数组(例如x = [5; 5; 5; 6; 6; 6])。 我希望以下列方式将数据放入矩阵形式:

        7    8    9
    5   1    2    3
    6   3    3    2

有什么建议吗?

1 个答案:

答案 0 :(得分:3)

这是你需要的吗?

>> x =[5 7 1
       5 8 2
       5 9 3
       6 7 3
       6 8 3
       6 9 2];
>> rowlabels = unique(x(:,1))
rowlabels =
     5
     6
>> collabels = unique(x(:,2))'
collabels =
     7     8     9
>> data = reshape(x(:,3),numel(collabels),numel(rowlabels))'
data =
     1     2     3
     3     3     2