2012-04-16 79 views
0

如果我执行s.device_macs那么我得到一个<1x3503 cell>,所以我期望这是我的连接输出,但我有两件事我不确定当我使用:a = cat(2,s.device_macs)MATLAB'cat()'函数返回不同的矩阵大小

要将先前我用cat(1,x)但这不起作用但是数量2让它运行,第二件事是,它返回一个< 1x603326细胞>,比当我不尝试使用cat()明显大得多。

非常感谢MATLAB新手!

回答

0

我已经使用了解决这个问题的作弊方法。正如我所提到的ans是走出正确的,所以我决定只使用:

s.device_macs; % This gives the answer of <1x3503 cell> 
macId = ans; % I now make macId copy answer 
clear ans; % Now I wipe ans leaving me with just macId 

我知道这是不是编码相比,只是知道的语言,但管磁带式的修复是一种有效的方法有趣的发现:P。

+0

试试'macId = {s.device_macs};'? – 2012-04-17 17:33:10

+0

这些做什么或如何找到一些帮助文本,所以我知道为什么它给了我它正在做的答案? – Accendi 2012-04-17 18:37:29

+0

我的数据有106个不同的人在里面,我想我明白了,用{}}花括号创建一个矩阵,为每个人分别输入条目,因为我可以在其中执行(x).device_macs' x在1:106中 并且在这种情况下'macId = {s.device_macs};'将其作为<1x106 cell>返回。这听起来正确吗? 干杯! – Accendi 2012-04-17 18:51:26

0

s.device_macs是1行(第一维)x 3503列(第二维)向量。这就是为什么你必须在cat(2,s.device_macs)中指定2,以便它沿着第二维 - 列连接。我的猜测是,1x603326结果是一个字符串,有603326个字符(列),但并不完全确定...希望其他人可以在这里帮助。