访问1x1 matlab单元格的内容

use*_*604 2 matlab cell-array

我不确定术语,但我已经将文本文件中的数据读入1x1单元阵列P.检查时P,它会在(1,1)位置列出"<142x2 cell>".从那里我可以双击它,它打开到我真正想要的142x2单元格.问题是,我不知道如何通过代码操作这些数据以从1x1单元阵列转换为142x2单元阵列.此外,我无法找到花括号表示的任何地方.

Eit*_*n T 6

我不知道如何通过代码操作此数据以从1x1单元阵列转换为142x2单元阵列.

单元阵列P实际上是1x1单元阵列,其又包含另一个单元阵列142x2.这种类型的输出在使用时非常常见textscan.要访问内部单元格数组,您可以简单地使用花括号({}),如下所示:

Q = P{1}; // or P{:} if you're certain that P holds only one cell
Run Code Online (Sandbox Code Playgroud)

结果Q应该保存您的142x2单元阵列.我通常PP = P{:}不使用中间变量的情况下"扁平化" .

此外,我无法找到花括号表示的任何地方.

您是否阅读过有关特殊字符的MATLAB文档?这就是它所说的:

大括号括号用于单元格数组赋值语句中.例如A(2,1) = {[1 2 3; 4 5 6]},或A{2,2} = ('str').有关help paren的更多信息,请参阅{ }.

我还恳请您阅读以下(非常)相关问题:使用{}和()(花括号与括号)访问单元格元素之间的区别