gpt4 book ai didi

matlab - 覆盖内置函数 - 标准偏差

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

我想要一个标准偏差的 std.m 文件。它位于 data fun 工具箱中,但是我错误地更改了代码,std 命令不再起作用。如何运行原始的 std(标准偏差)命令?

最佳答案

去掉所有注释,函数std.m其实极其简单:

function y = std(varargin)
y = sqrt(var(varargin{:}));

这是标准差的定义:方差的平方根。


  • 将内置函数设置为只读

现在不要破坏 var.m 文件,因为它更复杂,我想知道在这里显示列表是否会有版权问题。

为避免破坏内置文件的问题,建议将所有 Matlab 工具箱文件设置为只读。我记得旧的 Matlab 安装程序提供了在安装时执行此操作的选项。我不知道安装程序是否仍然提供该选项,但如果没有,则手动操作非常容易(在 Windows 上,只需选择您的文件夹,右键单击 Properties,勾选只读并接受将属性传播到所有子文件夹和文件)。


  • 重载

完成此操作后,您的内置文件就安全了。您仍然可以通过重载 来修改内置函数的默认行为。这包括编写一个具有相同名称的函数,并安排在默认函数之前调用它(您的重载函数成为默认函数)。

article解释如何重载用户函数。

Matlab 不建议直接重载内置函数(而是将其称为另一个名称,例如 mySTD.m),但如果您坚持这样做是完全可行的,并且仍然是一个更好的选择而不是修改内置函数...至少原始函数在某处仍然完好无损

关于matlab - 覆盖内置函数 - 标准偏差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31832891/

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