作者AWGN (可加性高斯白杂讯)
看板MATLAB
标题[讨论] Indexing cannot yield multiple results.
时间Thu Apr 12 15:13:10 2012
以下是我的成是一部分
X=2*rand(12,50)-ones(12,50);
P=zeros(1,50);
for i=1:50
P(i)= function(X(:,i));
end
[G,n]=min(P);
请问 function是我写的一个函数,回传一个值存入P
P的结果可以算出来(在最下面)
但问题是我想找出P向量的最小值与其位置 就出现以下错误讯息
Indexing cannot yield multiple results.
请问到底是哪出问题了呢?
1.0e+004 *
Columns 1 through 14
0.0136 0.0200 0.0296 0.0176 0.2700 0.0062 0.0031
0.0035 0.0045 0.2575 0.0036 7.6665 0.0393 0.0086
Columns 15 through 28
0.0693 0.0196 0.0431 0.1124 1.6150 0.2237 0.0842
0.0072 0.2414 0.0044 0.0109 0.0027 2.6091 0.0073
Columns 29 through 42
0.0239 0.0019 0.0217 0.0064 0.0014 0.0141 0.3065
0.0196 0.0057 0.0021 0.0020 0.0113 0.0189 0.0025
Columns 43 through 50
0.2144 0.0035 0.0081 0.0022 0.0106 0.0040 0.0950
0.0326
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.21.191
※ 编辑: AWGN 来自: 140.112.21.191 (04/12 15:17)
1F:推 sunev:你确定错误是发生在 min? 04/12 15:42
2F:→ AWGN:找不出其他可能 04/12 15:51
3F:推 sunev:error会报行数,所以出错误的是min那行? 04/12 16:16
4F:→ AWGN:error出在黄色那行的等号 04/12 16:29
5F:推 vincent59: 1.0e+004 * 请问这是??? 04/12 18:37
6F:→ vincent59:感觉好像没什麽问题 04/12 18:38
7F:推 sunev:啊,我懂了,min是变数 XD 04/12 20:47
8F:推 vincent59:楼上!你是怎麽看出来的??? 04/12 20:59
9F:推 vincent59:所以第1个数字是136 04/12 21:18
10F:推 vincent59:我也懂S大的意思,原po是不是曾执行过类似我以下写的2行 04/12 21:27
11F:→ vincent59:min=1:10;[a,b]=min(min); 04/12 21:27
12F:→ vincent59:好玩的是只要执行过1次,就算改变数名。也一样会出现 04/12 21:29
13F:→ vincent59:??? Indexing can't yield multiple results. 04/12 21:29
14F:→ vincent59:只是不懂改了变数名还会发生 04/12 21:30