在MATLAB中将数字垫显示为数据集(带有行/列名称)

时间:2012-10-10 17:02:34

标签: matlab matrix indexing dataset publish

我不太熟悉Matlab中可读格式的数据集/显示数据。我有一个数字矩阵,说4个cols,我需要将它显示为:

mydata1 = [100 200 400 40] ;
mydata2 = [1   2   3   4 ] ;
display it as -->

         CovA   CovB   CovC  CovD
  Sys1   100    200    400   40
  Sys2   1      2      3     4

我猜数据集可以帮助我实现这一点。转换后,我希望与其他人一起发布此数据集。谢谢!

2 个答案:

答案 0 :(得分:1)

DATASET按列构建数据。因此,你可以接受一切都是转置的,即

ds = dataset({mydata1','sys1'},{mydata2','sys2'},'obsNames',...
     {'CovA','CovB','CovC','CovD'})

ds = 

            sys1    sys2
    CovA    100     1   
    CovB    200     2   
    CovC    400     3   
    CovD     40     4   

或者通过首先连接mydata来构建数据集非常不方便:

mm = [mydata1;mydata2];
dataset(mm(:,1),mm(:,2),mm(:,3),mm(:,4),'varNames',...
       {'CovA','CovB','CovC','CovD'},'obsNames',{'sys1','sys2'})

ans = 

            CovA    CovB    CovC    CovD
    sys1    100     200     400     40  
    sys2      1       2       3      4 

答案 1 :(得分:0)