Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Octave 倍频程:检查单元格数组元素的存在性_Octave_Exists - Fatal编程技术网

Octave 倍频程:检查单元格数组元素的存在性

Octave 倍频程:检查单元格数组元素的存在性,octave,exists,Octave,Exists,我使用的是倍频程4.0.0 我定义A{1,1}='qwe',但当我检查A{1,1}的存在时,如 exist("A{1,1}") 或 它返回0 如何检查其存在性?要检查数组是否包含元素,例如3,5,需要验证数组是否至少包含3行和5列: all(size(A) >= [3, 5]) 当然,您可以检查前面是否存在变量A,它也是一个单元格数组。一个完整的解决方案可能是 函数b=is_元素(名称,varargn) b=假; 如果~evalin(['exists('name'),'caller'

我使用的是倍频程4.0.0

我定义
A{1,1}='qwe'
,但当我检查
A{1,1}
的存在时,如

 exist("A{1,1}")

它返回0


如何检查其存在性?

要检查数组是否包含元素,例如
3,5
,需要验证数组是否至少包含3行和5列:

all(size(A) >= [3, 5])
当然,您可以检查前面是否存在变量
A
,它也是一个单元格数组。一个完整的解决方案可能是

函数b=is_元素(名称,varargn)
b=假;
如果~evalin(['exists('name'),'caller')
返回;
结束
if~strcmp(evalin(['class('name'),'caller'),'cell'))
返回;
结束
如果evalin(['ndim('name')'),'caller')~=nargin-1
返回;
结束
b=all(evalin(['size('name')','caller')>=cell2mat(varargin))
端功能

此函数接受您感兴趣的变量名和多维索引。如果对象是一个具有足够维度和大小的单元格数组,可以包含请求的元素,则返回1。

检查这样的元素是否存在是没有意义的。检查数组是否存在,以及数组的大小是否足以包含该元素请注意,
“a{1,1}”
不是有效的变量名,因此它不能存在。“这是一个语句,而不是一个变量名。”“嗯,它在我当前的代码中非常有意义;我正在读取大量文件,然后将它们存储在单元格中,并根据它们是否在名称中的某些位置包含某些数字为它们编制索引。因此,单元格的某些索引可能仍然为空,而单元格本身也没有帮助。您是否在寻找
isempty
函数?这取决于它们是否在其索引中的某些位置包含某些数字names@HüseyincaÖnel在您最后一次评论“单元格中的文件名…”听起来你在寻找regexp或一些字符串比较/解析函数鉴于你对问题的最后评论,我认为这个答案有点不完整。将单元格值的检查合并到我提供的函数中应该不会有问题。请注意,非常欢迎您。正确的感谢方式是通过点击答案旁边的复选标记来选择答案。
all(size(A) >= [3, 5])