爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 16207|回复: 25

MeteoInfoLab脚本示例:模式检验

[复制链接]

新浪微博达人勋

发表于 2016-5-16 11:16:33 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 MeteoInfo 于 2020-4-10 14:43 编辑

MeteoInfoLab软件中自带一个toolbox(也就是插件),在Apps菜单中可以打开相关界面。模式检验的介绍可以看此网页:http://www.cawcr.gov.au/projects/verification/。这里简单说一下脚本的使用。在MeteoInfoLab启动时会加载toolbox目录中的toolbox.py模块,主要是加载了一个verify模块用于模式检验。toolbox -> verification -> sample目录中有一个简单的示例数据ex1.csv,包含了观测和预报数据。

  1. datadir = r'D:\MyProgram\Distribution\Java\MeteoInfo\MeteoInfo\toolbox\imep\sample'
  2. fn = os.path.join(datadir, 'ex1.csv')
  3. table = readtable(fn, delimiter=',', format='%3i%5f%i')
  4. obs = table['Obs']
  5. fcst = table['GFSMean']
  6. scatter(obs, fcst, fill=False)
  7. xlabel('Observation')
  8. ylabel('Forecast')
  9. ylim(-4, 18)
  10. x = [-4, 18]
  11. y = [-4, 18]
  12. plot(x, y)
  13. title('Most Basic')


verify_scatter.png

进行模式检验:
1、读取观测和模式预报数据,形成相应的数组obs和fcst。
2、设定模式检验方法(verify模块的verifymethod()方法),比如连续数据检验(method='continuous')或有无检验(method='dichotomous'),有无检验方法还需要设定数值范围(本例中>8)。
3、获取检验结果表,使用verify模块的verifytable()方法,参数分别是观测数据、预报数据和上一步设定的检验方法。
4、输出检验结果,在Console中打印,或者输出到文件中。

示例脚本:
  1. import imep
  2. datadir = 'D:/MyProgram/java/MeteoInfoDev/toolbox/IMEP/imep/sample'
  3. fn = os.path.join(datadir, 'ex1.csv')
  4. table = DataFrame.read_table(fn, delimiter=',', format='%3i%5f%i')
  5. obs = table['Obs'].values
  6. fcst = table['GFSMean'].values

  7. print 'Continuous verification...'
  8. cmethod = imep.verifymethod(method='continuous')
  9. ctable = imep.verifytable(obs, fcst, cmethod)
  10. print ctable

  11. print 'Dichotomous verification...'
  12. dr = imep.datarange(min=8)    # >= 8
  13. dmethod = imep.verifymethod(method='dichotomous', drange=dr)
  14. dtable = imep.verifytable(obs, fcst, dmethod)
  15. print dtable


在Console中输出的结果:
>>> run script...
Continuous verification...
Score        Value
MAE        2.20
R        0.69
MeanErr        0.58
Bias        1.09
RMSE        2.76
MSE        7.62

Dichotomous verification...
Hit: 58
Miss: 24
False alarm: 30
Correct negative: 123
---------------------------
Score        Value
Accuracy        0.77
HK        0.51
OR        9.91
POD        0.71
ETS        0.34
Bias        1.07
FAR        0.34
ORSS        0.82
POFD        0.20
HSS        0.50
SR        0.66
TS        0.52
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2016-5-16 16:23:28 | 显示全部楼层
太强大了      
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2016-5-16 17:32:34 | 显示全部楼层
学习了~~~~~~~
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2016-5-17 09:41:33 | 显示全部楼层
学习了!!!
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2016-5-17 14:02:37 | 显示全部楼层
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2016-5-20 15:11:25 | 显示全部楼层
给力!!!!!!!!
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2016-5-20 18:24:01 | 显示全部楼层
学习了~~~~~~~
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2017-3-3 20:10:02 | 显示全部楼层
楼主您好,最近在做有关评分的东西,对于POD,ETS,FAR,BIAS还算了解,但是对于其他的尤其是SR不是很了解,能给说明一下吗?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2017-3-3 23:48:00 | 显示全部楼层
洋咩咩 发表于 2017-3-3 20:10
楼主您好,最近在做有关评分的东西,对于POD,ETS,FAR,BIAS还算了解,但是对于其他的尤其是SR不是很了解,能 ...

参考此网页:http://www.cawcr.gov.au/projects/verification/
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-3-4 12:23:37 | 显示全部楼层
MeteoInfo 发表于 2017-3-3 23:48
参考此网页:http://www.cawcr.gov.au/projects/verification/

好的,谢谢!
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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