1

我下载了一个涉及 minmax() 函数的代码,代码的主干如下所示:

A = [13 5; 
    13, 13; 
    23, 26];

B = [13, 6; 
    13. 6; 
    5, 26];

C = [A;B];
Datad = minmax(C');

G = 178*Datad(1,1)/174*Datad(1,2)

当我运行代码时,出现了一条错误消息:

“double”类型的输入参数的未定义函数或方法“minmax”。

所以我去了谷歌,这个简单的代码应该可以工作:

  x=1:10;
   m=minmax(x)

m =

 1    10

但是它不起作用,并且出现了相同的错误消息。

由于我认为 minmax 不会起作用,所以我的问题是:

有没有其他方法可以替换minmax?我知道有一个最小值最大值函数可以完成这项工作。但我不确定原始的minmax函数如何用于矩阵,因为我需要正确处理才能获得 G。

minmax 函数定义为:这里

4

3 回答 3

3

尝试which minmax找出它的位置。如果您收到错误'minmax' not found.,那么您的搜索路径中没有它。

which minmax给了我/usr/local/MATLAB/R2011b/toolbox/nnet/nnet/nndatafun/minmax.m(Linux 版本),所以在我看来该功能minmax在神经网络工具箱中。所以也许你还没有安装神经网络工具箱。

于 2012-04-19T09:11:16.787 回答
3

在您的代码中使用它,然后您不需要单独的文件。

minmax = @(x) [min(x(:)) max(x(:))];

请注意,它不支持[Y,I] = minmax(X)您提供的链接中提到的语法。

于 2012-04-19T09:01:43.827 回答
0

错误消息告诉您 matlab 找不到该函数。这里有两个可能的罪魁祸首。

1) 文件未命名minmax.m:matlab 通过文件名查找函数。在这种情况下,重命名文件。
2)minmax.m所在目录不在 matlab 上path。在这种情况下,要么将该目录添加到路径中,要么将文件移动到路径上的目录(或当前目录)。

于 2012-04-19T08:25:54.403 回答