【发布时间】:2014-03-14 15:37:42
【问题描述】:
由于默认情况下 Octave 似乎没有为 1D 或 2D 带来高斯函数,因此我尝试自己定义这些函数。
我从定义开始
function [result] = Gauss(x,[x0 sigma])
result = 1/(sqrt(2*pi*sigma^2))*exp(-1(x-x0)^2/2*sigma^2)
end
导致下标错误
error: subscript indices must be either positive integers or logicals
我尝试修改函数定义如下:
function [result] = Gauss(x,[x0 sigma])
我从 Matlab 中找到了一个函数 gaussmf,您可以在其中传递一个数组 x 和 x0 和 sigma 中的单个数字。不幸的是,我仍然收到订阅错误。
所以我的问题是:在这种情况下如何传递数组和其他非数组参数? 我认为这将是相当自动的,但似乎不是...... ;)
谢谢
【问题讨论】:
-
GNU Octave 对于一维情况有
normpdf()。你不能那样定义函数。请阅读手册。
标签: arrays matlab function octave