我想在MatLab中创建一个SQL样式的表,这意味着每一行都是一个观察,每一列都是一个字段.它都是数字的,所以我应该能够将它保存在2D数组中,但为了节省空间,我需要一些字段来占用比其他字段更少的位.
有没有办法有一个数组A,其中A(:,1)的类型为uint32,而A(:,2)的类型为uint8,例如?
我目前正在用一个数组的数组来完成这个,其中单元数组中的每个单元代表一个列(作为nx1数组),然后我访问单个记录的值数组样式.示例:要获取记录45的字段2,我使用A {2}(45).问题是,这不是非常快速,因为我无法对其进行矢量化以获取特定记录的所有字段(侧面问题:是否有像A {1:3}(45)那样的矢量化方法?).
我有两个工作簿,它们的工作表在逻辑上应该看起来相同。我不想手动维护它们的相同性,所以我想动态链接它们(就像你在单元格之间使用公式:“=A1”所做的那样)。我想链接整个电子表格,而不仅仅是几个单元格。
有没有办法在不制作 238427398729 公式的情况下做到这一点,从而使我的机器崩溃?有没有办法说“=sheet2”作为定义整个工作表内容的公式?
我试图通过从私有范围内的函数中剥离参数来清理代码,如下所示:
Function complicatedFunction(x as Double, param1 as Double, param2 as Double)
...
End Function
Function mainActionHappensHere(L as Double, U as Double ...)
Function cleaner(x)
cleaner = complicatedFunction(x, L, U)
End Function
...
cleaner(x) 'Many calls to this function
...
End Function
Run Code Online (Sandbox Code Playgroud)
这可能吗?编译器抱怨"预期结束函数",因为我在结束外部函数之前开始执行函数.谷歌没有帮助:( PS我不能在mainActionHappensHere()之外定义cleaner(),因为那时正确的L和U不会被传递到它.