cell-array相关内容

访问1x1 matlab单元的内容

我不确定这个术语,但是我已经将数据从文本文件读取到1x1单元格数组P中.检查P时,它在(1,1)位置列出了"".从那里,我可以双击它,它会打开到我真正想要的142x2单元格中.问题是,我不知道如何通过代码将数据从1x1单元阵列转换为142x2单元阵列. 另外,我在任何地方都找不到大括号表示的内容. 解决方案 我不知道如何通过代码将数据从1x1单元格数组转换为142x2单元格. 单 ..
发布时间:2020-05-06 13:10:53 其他开发

如何对单元格的元素进行排序?

我有一个像这样的牢房: A{1,1}=[ 1 ;2; 3;]; A{2,1}=[ 4 ;2;]; A{3,1}=[ 3 ;2; 5; 4; 6;]; ... A{N,1}=[ 10 ;2;5; 7;]; %N is very large. 换句话说,此单元格每个元素中的列数是不同的,没有确定的模式. 现在,我想基于第一列中的元素对这些元素进行排序.我的意思是,我希望结果是这样的 ..
发布时间:2020-05-06 13:03:40 其他开发

如何在MATLAB中删除单元格数组中的零条目?

我在MATLAB中有一个单元格数组,可以说cell_arr,它具有零个条目以及非零个单元格条目.例如: cell_arr = {0, 0, 0, 0, 0, {1x3 cell}, {1x3 cell}, {1x3 cell}, {1x3 cell}}; 有人可以告诉我如何从cell_arr中删除这些零条目,或者查找非零条目的索引吗?另外,我想避免执行此作业的for循环. 我已经尝 ..
发布时间:2020-05-06 13:01:48 其他开发

MATLAB/OCTAVE从细胞阵列中不同大小的向量中提取元素

我有一个简单的问题,但我无法弄清楚或在任何地方找到它. 我有一个单元格数组,其中c {1}是一个向量,c {2}是一个向量,但长度不同,最大为c {i}.我想要的是一个向量[c {1}; c {2}; c {3} ... c {i}].最有效的方法是什么? 解决方案 以下一线甚至可以用于完全不一致的输入: result = [cell2mat(cellfun(@(x) x(:), A ..
发布时间:2020-05-06 12:54:12 其他开发

Matlab-按属性对对象的单元格数组进行排序

假设我有一个名为Foo的类,具有一个名为DateTime的datenum属性.如果我有一个Foo对象的单元格数组集合,如何根据每个对象的DateTime属性对其进行排序? 我已经看到了有关重载sort方法和使用对象数组的参考,但是由于动态调整大小,我使用了单元格数组,并且这些指令没有成立.有人有建议吗?干杯 解决方案 最简单的方法是将时间值提取到向量中,对其进行排序,然后使用新的顺序 ..
发布时间:2020-05-06 12:53:33 其他开发

“铺平"单元阵列

我创建了一个函数,该函数接受输入变量的向量,并为每组输入返回一个单元格数组.最终的输出变量(out)似乎由一个包含两个1x5单元格的2x1单元格组成.我在下面提供了此屏幕截图: 我只是想弄清楚如何将单元阵列(变平)成2x5单元阵列. 解决方案 实现该目标的一种方法是- vertcat(cell_array1{:}) ..
发布时间:2020-05-06 12:50:55 其他开发

考虑到每行上所有可能的排列,找到单元格数组的唯一行

我有尺寸为m * k的单元格数组A. 我想将A的行保持唯一性最多按k个单元格的顺序. “棘手"部分是“最多k个单元格" :考虑A,A(i,:)的第i行中的k个单元格;可能存在A,A(j,:)的行j,相当于A(i,:),直到对其k单元格的重新排序,这意味着例如k=4可能是: A{i,1}=A{j,2} A{i,2}=A{j,3} A{i,3}=A{j,1} A{i,4}=A{j,4 ..
发布时间:2020-05-06 12:47:32 其他开发

在Matlab中使用不同数量的参数调用函数

我正在使用符号工具箱来生成matlab函数.但是生成函数的输入数量随我需要的对象数量(例如,开关数量)而变化.对于2和3开关,生成的函数如下所示: y = fun(a1,a2,b1,b2) y = fun(a1,a2,a3,b1,b2,b3) 在使用此功能的脚本中,我建立了这些参数的向量: a = [a1 a2 ...] 我想要的是直接调用生成的函数或创建包装函数,以便在更改开 ..
发布时间:2020-05-06 12:43:51 其他开发

在MATLAB中将cell2mat之前的空单元格替换为逻辑0

我有一个空单元格数组,我想将其转换为逻辑数组,其中空单元格为零.当我使用cell2mat时,将忽略空单元格,最后得到的矩阵只有1,而没有引用它们所保存的先前索引.有没有一种方法可以在不使用循环的情况下执行此操作? 示例代码: for n=1:5 %generate sample cell array mycellarray{n}=1; end myce ..
发布时间:2020-05-06 12:41:07 其他开发

在不同大小的不同像元阵列中查找重复值的最快方法

问题如下: 我有一个格式为indx{jj}的单元格数组,其中每个jj是一个1xNjj数组,这意味着它们的大小都不同.就我而言,max(jj)==3,但让我们考虑一下它的一般情况. 您将如何找到以最快方式在所有jj中重复的值? 我可以猜测如何使用多个for循环,但是有“一个(三个?)衬里"吗? 简单的例子: indx{1}=[ 1 3 5 7 9]; indx{2}=[ ..
发布时间:2020-05-06 12:32:56 其他开发

如何检测单元格阵列中的空单元格?

如何检测单元格阵列中的空单元格?我知道删除空单元格的命令是a(1) = [],但是我似乎无法让MATLAB自动检测哪些单元格为空. 背景: 我使用a=cell(1,53)预分配了一个单元格数组. 然后,我使用if exist(filename(i))和textscan检查文件并读入.结果,当filename(i)不存在时,将产生一个空单元格,然后我们移至下一个文件. 读完所有文件后,我 ..
发布时间:2020-05-06 12:24:44 其他开发

mat2str到单元阵列的一般化

有时我会错过一个函数来生成(可能是嵌套的)单元格数组的字符串表示形式.这将是 mat2str 的概括,它仅适用于非单元格数组(数字,字符或逻辑类型. 给定一个数组x,如何获取字符串表示形式y,以便求值该字符串会产生x? 例如输入 x = {[10 20], {'abc'; false; true;}}; 应该产生一个输出字符串,例如 y = '{[10 20], {'' ..
发布时间:2020-05-06 12:19:26 其他开发

使用花括号和括号访问单元格元素之间的区别

使用括号()和花括号{}访问单元格数组中的元素有什么区别? 例如,我尝试使用cell{4} = []和cell(4) = [].在第一种情况下,它将第4个 元素设置为[],但是在第二种情况下,它擦除了单元元素,即将单元元素数减少了1. 解决方案 将细胞阵列视为常规的同质阵列,其元素均为cell.括号(())仅访问cell包装对象,而使用花括号({})访问元素将给出单元格中包含的实际对 ..
发布时间:2020-05-06 12:01:41 其他开发