如何通过名称访问数据集中的某一行?

时间:2014-03-25 18:40:07

标签: matlab matrix

我在MATLAB中定义了一个矩阵,名为M,

M = [1,2,3;
     3,2,1]

然后我使用以下代码为行和列指定名称:

dataset({M 'AA','AC','AG'}, ...
              'obsnames', {'AA','AC'})

嗯,矩阵应该是这样的:

     AA    AC    AG
AA    1     2     3 
AC    3     2     1 

现在,我正在尝试使用行名称指定第二行,例如M('AA',:),但它不起作用,所以如何做到这一点,任何人都可以给我一个想法。感谢。

1 个答案:

答案 0 :(得分:0)

问题是您的dataset未存储在变量M下,因此您无法使用此变量对其进行索引。您需要/可以将其分配给新变量。

D = dataset({M 'AA','AC','AG'},'obsnames', {'AA','AC'})

D('AA',:)

将返回:

ans = 

          AA    AC    AG
    AA    1     2     3

...或者再次使用MM = dataset({M ...然后M('AA',:)