24小时热门版块排行榜    

查看: 1347  |  回复: 4
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

gl776369690

新虫 (初入文坛)

[求助] matlab中返回数组中某个值的下标

假定M是一个1*1024的数组,Y1是数组最大值,对应的点是m1,Y2是数组的最小值,对应的点是m2,现在求得Y=(Y1-Y2)/2,求Y对应数组中哪一点,或者相近的点..........怎么写代码啊
回复此楼

» 收录本帖的淘帖专辑推荐

matlab学习

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

感谢参与,应助指数 +1
ben_ladeng: 专家考核 2013-03-20 16:56:41
1楼的做法必须要整(Y1-Y2)/2在原矩阵M中确实存在,否则会返回空值,例如
CODE:
M = [1,3,10];
Y1=max(M);
Y2=min(M);
Y=(Y1-Y2)/2;
index=find(M==Y)

完善的做法是求最接近的位置,这样就能保证肯定会返回一个值(如果存在,返回那个值,如果不存在,返回最近接的)
代码:
CODE:
M = [1,3,10];
Y1=max(M);
Y2=min(M);
Y=abs(M-(Y1-Y2)/2);
ind = find(Y==min(Y))

matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
3楼2013-03-15 18:14:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 5 个回答

lauysche

禁虫 (著名写手)

感谢参与,应助指数 +1
本帖内容被屏蔽

2楼2013-03-15 17:24:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gl776369690

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by lauysche at 2013-03-15 17:24:22
Y1=max(M);
Y2=min(M);
Y=(Y1-Y2)/2;
index=find(M==Y)

有问题请联系:Q 403100600

谢谢啊  问题已经解决了O(∩_∩)O~
4楼2013-03-16 14:43:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gl776369690

新虫 (初入文坛)

引用回帖:
3楼: Originally posted by libralibra at 2013-03-15 18:14:09
1楼的做法必须要整(Y1-Y2)/2在原矩阵M中确实存在,否则会返回空值,例如
M = ;
Y1=max(M);
Y2=min(M);
Y=(Y1-Y2)/2;
index=find(M==Y)

完善的做法是求最接近的位置,这样就能保证肯定会返回一个值(如果存在,返 ...

谢谢你 问题已经解决了 O(∩_∩)O~
5楼2013-03-16 14:44:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见