gpt4 book ai didi

matlab - 如何调用非内置的内置函数?

转载 作者:太空宇宙 更新时间:2023-11-03 19:59:02 26 4
gpt4 key购买 nike

table()自 R2013b 以来,它一直是 MATLAB 中的标准函数。据我从文档中看到的,与 sumcellstruct 相比,table 没有什么特别之处>,或任何其他 builtin function .

但是,当我尝试使用 builtin('table',var1,...varN) 运行该函数时,我收到一条错误消息:

Error using builtin

Cannot find builtin function 'table'

进一步调查表明它实际上不被视为内置函数:

which('cell')
built-in (C:\Program Files\MATLAB\R2014b\toolbox\matlab\datatypes\cell)

which('table')
C:\Program Files\MATLAB\R2014b\toolbox\matlab\datatypes\@table\table.m % table constructor
|
Not builtin

进一步调查:

which cell2mat
C:\Program Files\MATLAB\R2014b\toolbox\matlab\datatypes\cell2mat.m

which mat2cell
C:\Program Files\MATLAB\R2014b\toolbox\matlab\datatypes\mat2cell.m

which table2array
C:\Program Files\MATLAB\R2014b\toolbox\matlab\datatypes\table2array.m

which struct2cell
built-in (C:\Program Files\MATLAB\R2014b\toolbox\matlab\datatypes\@struct\struct2cell) % struct method

which cell2struct
built-in (C:\Program Files\MATLAB\R2014b\toolbox\matlab\datatypes\@cell\cell2struct) % cell method

因此,cell 是内置的,而 table 不是。 cell2struct 是内置的,而 cell2mat 不是。

这是为什么,是否有一种简单的方法可以调用 MATLAB 未考虑内置的重载标准函数?


如果您认为为什么部分“过于宽泛”,请忽略它并跳到问题的最后部分。

最佳答案

您可以通过以下方式找到 native 函数:

allTables = which  ( '-all', 'table' )
allTables(cell2mat(strfind ( allTables, matlabroot )))

它不是完整的,对于某些功能(例如求和),根文件夹中有很多...

关于matlab - 如何调用非内置的内置函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35203035/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com