RClimDex(1.0)极端气候指数计算软件用户手册张学斌FengYang加拿大环境部气候研究中心2004年9月10日南京信息工程大学遥感学院陈昌春译注2013.82作者致谢RClimDex由XuebinZhang(张学斌)andFengYang(加拿大气象局气候研究部)开发与维护,最初的开发由加拿大国际发展办事处通过《加中气候协作项目,C5》资助。LisaAlexander,FrancisZwiers,ByronGleason,DavidStephenson,AlbertKlanTank,MarkNew,LucieVincent与TomPeterson对R包的开发与测试作出了重要贡献。CCl/CLIVARETCCDMI的有关研讨会也对RClimDex的改进提供了宝贵的意见。.译者的话原英文说明中所介绍的下载网址链接已无效,新网址包括://etccdi.pacificclimate.org/software.shtmlRClimdex可计算极端气候指数27项,以下摘录来自一硕士论文《内蒙古地区极端气候事件时空变化及其与NDVI的相关性》(使用RClimdex软件)的15项指数名称翻译及一段简要说明。1.指数名称、解释、单位FD0霜日一年中日最低温<0℃的日数天SU25夏日日数日最高气温>25℃的日数天GSL作物生长期连续6日5℃或5℃的时间跨度天TN10p冷夜日数日最低气温10%分位值的日数天TN90p暖夜日数日最低气温90%分位值的日数天TX10p冷昼日数日最高温10%分位值的日数天TX90p暖昼日数日最高温90%分位值的日数天WSDI热持续指数连续6日最高温在90%分位值日数天CSDI冷持续指数连续6日最低温在10%分位值日数天RX5day5日最大降水量每月内连续五日的最大降水量mmCDD持续干燥指数日降水量1mm的最长连续日数天CWD持续湿润指数日降水量≥mm的最大持续日数天SDII普通日降水强度降水量≥1mm的总量与日数之比mmR10强降水日数每年日降水量>=10mm的总日数天R95pTOT强降水量95%分位值强降水之和mm2.简要说明在应用RClimDex处理数据之前,必须确保每个站点的数据以文本格式储存,并且储存的气象数据必须按照年、月、日、24小时日降水量、日最高气温、日最低气温等顺序排列,各记录项之间通过空格将其隔开。由于研究的气象记录年限跨3度很大,难免有些记录值缺测,因此程序要求所有的缺测值都统一设为-99.9。启动R编辑器,读入RClimDex程序,在桌面窗口的引导下读入某站点气象数据的文本文件,程序将对文件数据进行检验处理,用于提高所用数据的质量。检验处理主要涉及几个方面的错误记录检查:(1)日最低温日最高温(2)日降水量0mm(3)记录值严重偏离本地区气象实际情况,即超出3倍标准差的值定义为出界值,通过人工检查同相邻站点的记录进行比对,合理的保留,不合理的按缺测进行处理。进行完质量控制处理后就可以对数据进行计算处理,得出一系列的excel格式的文件结果。4目录1.简介2.R语言安装2.1HowtoinstallR2.2HowtorunR3.如何使用RClimDex?3.1RClimDex的加载与使用3.2数据质量控制3.3指数计算4.已知的bugs5.Bug报告AppendixA:气候指数列表AppendixB:输入数据格式AppendixC:指数定义AppendixD:Thresholdandin-baseperiodtemperatureindicescalculationAppendixE:RforWindowsFAQ51.介绍加拿大气象研究中心的XuebinZhang(张学斌,华人)与FengYang开发的RClimDex(1.0)是对ClimDex软件(由加拿大国家气候数据中心的ByronGleason开发)的R语言改写与改进。RClimDex(1.0)是基于R编辑器开发的用于计算多种极端气候指数。ClimDex是以Excel为基础的程序,意在提供容易使用的软件包用于计算监测气候变化的气候极值。它由加拿大国家气候数据中心的ByronGleason开发,已经用于CCl/CLIVARworkshopsonclimateindicesfrom2001.使用者可以在窗口界面的提示和引导下将研究区域的气象记录值文件进行处理和计算,结果将以excel文件的形式输出。ClimDex项目软件开发之初就强调运行环境不依赖于特定的操作系统。因此使用R语言就就非常自然,因为R语言是健壮的、强大的统计分析与绘图软件。它既可运行于Windows系统,也可运行于Unix系统。2003年发现,在ClimDex及其他程序中,计算百分位基础的温度指数在指数序列组中出现了不一致性,修正工作需要的引导(又称“自展”)工作在EXCEL中难以进行,这使开发ClimDex的R语言包显得更加迫切。RClimDex(1.0)有着比较友好的操作界面,计算由CCl/CLIVAR推荐及可由用户定义门槛值的重要极端气候指数27种,包括16个极端温度指数和11个极端降水指数,这27个极端气候指数都是世界气象组织气候委员会推荐使用的核心极端气候指数,已包括了ClimDex(Version1.3)中的几乎全部指数。RClimDex(1.0)在R1.84下进行开发,它应该可以运行于R1.84及其后的版本。开发极端气候指数软件的目的之一是用于气候监测研究,这要求各项指数必须均一化(一致化)。数据均一化在本版中已经设想并未实施。当前的RClimDex版只包括一个简单的数据质量控制程序,由ClimDex计划(译者注:ClimDex是一个专门的计划,有专门的网站。当前分别有EXCEL版本、R语言版本、FORTRAN语言版本的ClimDex软件)提供。对于ClimDex的用户,我们希望,在计算极端指数前已进行数据质量控制。本用户手册提供逐步操作的说明。2.R语言的安装与运行(译者注:很方便,几乎不需要设置,一路点击即可)Risalanguageandenvironmentforstatisticalcomputingandgraphics.ItisaGNUimplementationoftheSlanguagedevelopedbyJohnChambersandcolleaguesatBellLaboratories(formerlyAT&T,nowLucentTechnologies).S-plusprovidesacommercialimplementationoftheSlanguage.2.1HowtoinstallR6RClimDex需要R包与图形用户界面TclTk。R的安装过程非常简单:1)登录网站)FollowthelinkstodownloadthemostrecentversionofRforyourcomputeroperatingsystemfromanymirrorsiteofCRAN.对于MicrosoftWindows(95,98,2000,andXP)系统,下载Windows版安装程序。进行安装后,R将出现在你的机器中,并且在你的桌面增加快捷图标。TclTk程序已包含在R1.9.0及以后版本中。对于Linux系统,downloadproperprecompiledbinariesandfollowtheinstructiontoinstallR.Forotherunixsystems,youmanyneedtodownloadsourcecodeandcompileityourself.2.2HowtorunR在Windows系统环境下,双击桌面的R快捷图标,或者在“开始”菜单中点击,R用户界面将会出现。第一次使用时你可能需要配置称做“HOME”的环境变量。详情可参见附录E中用户常问的问题(FAQ)。在unix环境下,直接在R程序界面运行。欲在R界面退出,输入q()即可。在Windows系统下,还可以选择“File”菜单然后点击“Exit”选项。3.如何使用RClimDex3.1RClimDex的加载1.直接在R窗口中操作,RClimDex可以通过下拉菜单加载R包。在RGui菜单下选“File”,再选“SourceRcode”。这将弹出一个窗口,你应指向你保存RClimDex的位置。2.在R语言命令提示符“”下,输入源文件(R包)名称:source(“rclimdex.r”)。如文件不在缺省目录(什么目录?)中,在rclimdex.r名称之前,你可能需要用全路径名,此时在提示符下输入:source(f:/rclimdex/rclimdex.r(注意:全路径名之间的间隔符为unix下采用的“/”而不是windows操作系统命令行(即以前的DOS操作系统)下的“\”)。这将加载RClimDex。7一旦源程序加载成功,RClimDex主菜单就会出现:译者注:英文原文中,3.1中1、2方法出现次序相反。为便利用户使用作了调换。3.2.加载数据,运行质量控制模块(QC)数据质量控制模块是计算极端指数的预备性处理工作。RClimDex质量控制模块执行如下功能:1)用R语言认可的数据格式代替缺失值(假设原数据以-99.9表示),如用“NA”表示“不可得”;2)用“NA”代替所有的不合理值。这些值包括a)小于0的日降水量;b)小于日最小气温的日最大气温。此外,质量控制模块还能识别日最大气温与日最大气温的离群值(不正常值)。这些离群值是由用户定义的区域之外的日特征值。当前,这个区域被定义为均值±日特征值的n倍标准差(翻译待审核!),即[mean–n*std,mean+n*std]。std表示日特征值的标准差,n表示一个用户的输入,mean(均值)表示气候特征的日值。8在RClimDex主菜单中选择“LoadDataandRunQC”,打开的窗口形式如下。用户能够选取用于计算极端指数的气候数据文件。文件名的格式应该有如“stationname.txt”。文件中数值格式应该符合附录B的要求。在这个实例中,我们使用一个名为“21946.txt”、ASCII格式的站点数据。数据加载成功之后,一个弹出窗口出现。如果这一步没有顺利完成,一个错误信息提示将会出现。这通常是由于输入格式有误。请比较你的数据格式与手册提供的样例数据格式。不合理的值将被自动识别,但离群值需要用户进行确认。n的缺省值是3(根据“为数据质量控制设定参数”的设定),但这个数值用户可以改写。因为3可能标志(flag)着一个很大的数值,用户可能希望设定为4。当9参数设定是为了以后使用(翻译待复核!),不需要填写“Stationnameorcode”,点击“OK”继续。译者注:此处n表示原始气象数据序列的标准差。如某地实际降水等变化超出此缺省值,可以适当放大,如将“3”改成“5”以避免误将真实值当成离群值。如果发现不合理值,将会出现弹出窗口。例如,日最小气温大于日最大气温。如果在日降水量中出现负值(除了以-99.9表示缺测的情况),将会出现以下窗口:10如果有离群值出现,将出现以下窗口。译者注:离群值的查找很方便。如果出现离群值,根据系统提示的目录中生成的文件21946tepstdQC.csv对原始数据中的不合理值进行查找与修改即可。数据控制模块完成,将会弹出一个窗口。同时,4个Excel文件:“21946tempQC.csv”,“21946prcpQC.csv”,“21946tepstdQC.csv”,and“21946indcal.csv”将建立在一个名为log的子目录中。开始的2个文件包含着气温与降水中存在的不合理值(比“离群值”还不合理)信息,第3个文件标记所有可能的气温离群值及其出现日期。最后一个文件包含着数据控制模块的信息,并将用于指数的计算。注意:在最后的一个文件中,仅用NA代替缺失值和不合理值,并