爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 8222|回复: 2

[作图] 4维数据平均问题

[复制链接]

新浪微博达人勋

发表于 2021-10-7 10:10:58 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
本帖最后由 推开世界的门 于 2021-10-7 10:58 编辑

各位大佬:不好意思,打扰大家,我想对1950-1978年的温度数据(4维,time=348,level=29,lat=121,lon=121))每半年求一个平均值,也就是每年1-6月得到一个平均值,每年的7-12月得到一个平均值,但是我的代码循环输出的结果不对,哪位大佬方便的话,麻烦您帮忙看看该怎么改正,万分感谢,代码如下:
f=addfile("F:/temperature/select/temperature_1950-1978.nc","r")
z=f->t(0:347,{50:1000},{30:0},{100:130})            ;time=348,level=29,lat=121,lon=121

w=new((/58,29,121,121/),float)                  

do i=0,347,6
  do j=0,28,1
    do k=0,120,1
      do m=0,120,1
        do n=0,57,1
        w(n,j,k,m)=(z(i,j,k,m)+z(i+1,j,k,m)+z(i+2,j,k,m)+z(i+3,j,k,m)+z(i+4,j,k,m)+z(i+5,j,k,m))/6
        n=n+1
        end do
      end do
    end do
  end do
end do

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

新浪微博达人勋

发表于 2021-10-7 10:35:40 | 显示全部楼层
NCL可以数组计算,没必要这么多循环,而且你的读取存储数组也是w,又新令了个新数组w,没有z
do i=0,58
        w(i,:,:,:)=dim_avg_n_Wrap(z(i*6:i*6+5,:,:,:),0)
end do
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-10-7 10:57:23 | 显示全部楼层
何源 发表于 2021-10-7 10:35
NCL可以数组计算,没必要这么多循环,而且你的读取存储数组也是w,又新令了个新数组w,没有z
do i=0,58
        w( ...

好的,大佬,我试一下,z是我刚开始度的垂直速度设置的变量,后来算温度,变量也没改,刚才复制代码的时候,为了看起来规范一点,就把变量改成t了,下面漏了,谢谢大佬
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

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