【发布时间】:2014-11-14 18:32:40
【问题描述】:
我现在对 MATLAB 感到非常沮丧。让我来说明问题。我将在这里使用非正式的符号。
我有一个名为B 的字符串的列单元格向量。现在,假设为B = {'A';'B';'C';'D'}。
我想要一个矩阵G,它是m×n,我想用B的各个元素替换G中的数字...例如,假设@987654326 @是[4 3; 2 1]
假设我有一个变量n,它表示我想取出多少行G。
当我做B(G(1:2,:)) 时,我得到了我想要的['D' 'C'; 'B' 'A']
但是,如果我执行B(G(1:1,:)),我会得到['D';'C'],而我真正想要得到的是['D' 'C']
我正在使用1:n,我希望它对n = 1 具有与n = 2 和n = 3 相同的行为。基本上,G 实际上是一个n-by-1500 矩阵,我想取顶部的n 行并将其用作B 的索引。
我可以使用 if 语句来转换结果 if n = 1 但这似乎没有必要。真的没有办法让它停止将我的 1×n 矩阵视为列向量吗?
【问题讨论】: