matlab有一个1×12的cell数组,每个数据的长度不一样,怎么把里面double类型的数据提取出来,有什么函数么
时间: 2023-05-31 10:02:19 浏览: 110
可以使用cellfun函数,将每个cell中的double类型数据提取出来,然后使用cat函数将它们连接成一个数组。具体代码如下:
cell_array = {rand(1,3), rand(1,4), rand(1,5), rand(1,2), rand(1,6), rand(1,1), ...
rand(1,7), rand(1,3), rand(1,4), rand(1,1), rand(1,4), rand(1,5)};
double_array = cat(2, cellfun(@(x) x(:)', cell_array, 'UniformOutput', false){:});
其中,cellfun函数的第一个参数是一个匿名函数,该匿名函数将每个cell中的数据转换为一维数组。第二个参数是待处理的cell数组,第三个参数是指定输出为一个cell数组,最后使用{}将其转换为括号内的内容,然后使用cat函数将它们连接成一个数组。
阅读全文