爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 10170|回复: 7

MATLAB数据处理提问,寻找矩阵中特殊值的位置

[复制链接]

新浪微博达人勋

发表于 2021-9-16 19:00:35 | 显示全部楼层 |阅读模式
100金钱
本帖最后由 zyzql 于 2021-9-17 08:14 编辑

假设有一个m*n*z尺寸的矩阵A,其中任意一个格点的页向量矩阵为B=A(mi,ni,:),现在我想找到B中第一个大于s的值的位置(即第几页)。我现在想对整个A的每个格点都进行如此判断。即返回一个m*n的矩阵C,每个格点位置上记录了第一个大于s的值的页数。要求:不使用for循环,不用while(忘记说了)。

最佳答案

查看完整内容

A = rand(3,4,5); [M,I] = max(A,[],3); %[M,I] = max(X,[],DIM) 我大概对了一下,I矩阵里返回的是A矩阵每个点在第三维的最大值位置。 如果要找特定的大于s的值,可以max(A-s)。 可能有问题,你可以验证一下
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2021-9-16 19:00:36 | 显示全部楼层
A = rand(3,4,5);
[M,I] = max(A,[],3);   %[M,I] = max(X,[],DIM)

我大概对了一下,I矩阵里返回的是A矩阵每个点在第三维的最大值位置。
如果要找特定的大于s的值,可以max(A-s)。
可能有问题,你可以验证一下

评分

参与人数 1金钱 +20 贡献 +1 收起 理由
zyzql + 20 + 1 很给力!

查看全部评分

密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

 成长值: 32430
发表于 2021-9-16 21:25:04 | 显示全部楼层
我记得有一个函数叫做while
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-9-17 08:06:27 | 显示全部楼层
二爷名声在外 发表于 2021-9-16 21:25
我记得有一个函数叫做while

感谢二爷来捧场,emmmm,忘记说了while也不太方便用,就是想纯矩阵运算不用循环能不能实现,我还没想出来怎么办
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-9-17 10:46:33 | 显示全部楼层
呆妹小霸王 发表于 2021-9-17 08:35
A = rand(3,4,5);
[M,I] = max(A,[],3);   %[M,I] = max(X,[],DIM)

非常感谢,这为我提供了一些思路,但我是想找第一个大于s的位置,可能在(1,1,:)中,有好多层都大于s,但我只想要第一个大于s的层数。
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2021-9-17 11:00:44 | 显示全部楼层
顺着楼上的思路。
arr=reshape(1:27,[3 3 3]);
arr  %print arr

s=12;
flag=(arr>s);  %大于s的为1,否则为0
[v,loc]=max(flag, [], 3); %dim=3。max默认返回第一个最大的
loc  %print loc

评分

参与人数 1金钱 +20 贡献 +1 收起 理由
zyzql + 20 + 1 很给力!

查看全部评分

密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-9-17 11:13:33 | 显示全部楼层
jstzysq 发表于 2021-9-17 11:00
顺着楼上的思路。
arr=reshape(1:27,[3 3 3]);
arr  %print arr

感谢,感谢,您和楼上帮我解决了我一个大困扰
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2021-9-17 16:13:02 | 显示全部楼层
这个方法真厉害,之前处理数据多的时候,一直想不起来用多维数组,现在看还是多维数组计算的时候方便
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表