Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有没有办法在matlab中将某些纬度更改为零?_Matlab_Nan - Fatal编程技术网

有没有办法在matlab中将某些纬度更改为零?

有没有办法在matlab中将某些纬度更改为零?,matlab,nan,Matlab,Nan,所以,我正在尝试进行一个不适用于热带纬度的海洋学计算,因此,我需要将30N和30S之间的纬度转换为零,以去除它们。 我已尝试按如下方式执行此操作: lat = th_lim(1):1/5.999:th_lim(2); lat_no_tropics(30>lat>-30) = 0; lat_no_tropics(isinf(lat_no_tropics)|isnan(lat_no_tropics)) = 0; th_lim是我使用的数据范围内的纬度限制(-90.0833和90.0

所以,我正在尝试进行一个不适用于热带纬度的海洋学计算,因此,我需要将30N和30S之间的纬度转换为零,以去除它们。 我已尝试按如下方式执行此操作:

lat = th_lim(1):1/5.999:th_lim(2); 
lat_no_tropics(30>lat>-30) = 0;
lat_no_tropics(isinf(lat_no_tropics)|isnan(lat_no_tropics)) = 0; 
th_lim是我使用的数据范围内的纬度限制(-90.0833和90.0833)。 选择1/5.999是为了使lat具有与计算中使用的其他遮罩相同的尺寸。 然而,它的结果是,纬度无热带(尽管它有正确的维度)只是一系列的零,仅此而已


如果有人能告诉我哪里出了问题,我将不胜感激。

您可以通过以下方式将值设置为零:

% create data
lat = (rand(100,1)*100)-50;

% thresholds:
th_lower = -30;
th_upper = 30;

% set data within thresholds to 0
lat((th_upper > lat) & (lat > th_lower)) = 0;

30>lat>-30
是我想说的你错的地方。最好是做
abs(lat)只是为了清楚起见,我会选择
lat
而不是相反的方法,但效果当然是一样的。