从单元格数组

时间:2016-06-29 18:02:26

标签: matlab matrix parameters

我看过类似的问题,但没有一个直接适用于我的情况。

这是一个非常简单的场景。

我正在使用参数文件,在从pf文件中提取一个小的2x1数组时,我留下了

var_1 = 

[-180]
[-120]

我希望能够像处理矩阵那样处理var_1的内容,但括号不允许我这样做。例如, sum(var_1)会返回错误。

如何才能使 var_1 成为矩阵?

非常感谢,

高斯

2 个答案:

答案 0 :(得分:0)

在单元格数组的情况下,使用curl括号'{'和'}'对它们进行索引。在你的情况下:

-180是var_1 {1},-120是var_1 {2}。

您可以使用方括号'['和']'连接变量来创建矩阵。因此,您可以通过以下方式创建矩阵var_1:

var_1=[var_1{1},var_1{2}];

现在var_1是一个矩阵。

sum(var_1)

sum(var_1)现在将导致-300;

如果您提取的单元格数组的大小正在变化,那么您可以使用for循环或

var_1=[var_1{1:end}]; 

产生相同的结果。

答案 1 :(得分:0)

两种可能的解决方案:

sum(cell2mat(var_1))

或者简单地说:

sum([var_1{:}])