我使用的函数可能会返回超过3或4的输出,这使得很难将这些数字/矩阵逐个分配给用户定义的变量。这是一个例子:
k = fix(log2(length(s)))
[c,l] = wavedec(s,k,'db1');
[cd1,cd2,cd3, ... , cdk] = detcoef(c,l,1:k);
在这个例子中,k是22。如何通过不写入1到22的所有CD来获得这些输出?
答案 0 :(得分:1)
不要创建这些动态变量。只需使用:
D = detcoef(c,l,1:k);
这将创建一个单元格数组,其内容与cd1
,cd2
,...,cdk
的内容分别位于第1,第2,...,第k个索引。分别使用D{1}
,D{2}
,...,D{k}
访问它们。