Gestapistill: Að sannreyna staðhæfingar

Oft skjóta upp kollinum spurningar um loftslagsbreytingar sem mjög auðvelt er að svara ef maður hefur aðgang að réttum gögnum. Dæmi um þetta sá ég í nýlegri blaðagrein þar sem eftirfarandi fullyrðing kom fram:

“As the world has already been through two of its coldest winters for decades, with all the signs that we may now be entering a third, the scientific case for CO₂ threatening the world with warming has been crumbling away on an astonishing scale.”

(Greinina má finna á vefsvæði Daily Telegraph, en hún er slíkt samsafn vafasamra fullyrðinga að það má teljast ábyrgðarhluti að benda á hana)

Þó fleiri rangar fullyrðingar væru í greininni hjó ég sérstaklega eftir þessari, því ég kannaðist ekki við að þetta væri rétt, auk þess sem  það ætti að vera auðvelt að tékka á henni.

Nokkrar mismunandi samantektir eru til á hnattrænum meðalhita (sjá greinina  “Hætti hlýnun jarðar eftir 1998” fyrir nánari umfjöllun), en ágæt röð til að nota hér er frá bandarísku veðurstofunni NOAA. Veðurfarsgagnamiðstöðin  (NCDC) heldur úti síðu þar sem nýjustu mánaðargildi eru birt.  Á síðunni má finna ítarlegar upplýsingar um það hvernig gögnin sem aðgengileg eru frá síðunni eru sett saman, en ekki verður farið nánar í þá sálma hér.

Gagnaröðin sem hér kemur að gagni má finna neðarlega á síðunni og hún er merkt sem

“The Monthly Global (land and ocean combined into an anomaly) Index (degrees C)”. Ef smellt er á krækjuna fer vafrarinn á FTP svæðið:

ftp://ftp.ncdc.noaa.gov/pub/data/anomalies/monthly.land_ocean.90S.90N.df_1901-2000mean.dat

Röðin sýnir hnattræn hitafrávik hvers mánaðar miðað við meðaltal 20. aldarinnar. Ef þessi gögn eru skoðuð sést að fyrstu áratugina (fram yfir 1920) eru frávikin iðulega minni en núll, en þau eru stærri en núll síðustu áratugina (Tölur sem vantar eru merktar -999, en þær eru aftast í röðinni og endurspegla þá mánuði sem vantar af árinu sem er að líða).

Hefðbundin skilgreining á vetri í veðurfarsfræðum er tímabilið desember til febrúar. Á Íslandi væri meira vit að nota lengra tímabil, en það er önnur saga. Ef tölurnar fyrir þessa mánuði síðustu tvö ár eru skoðaðar og bornar saman við árin á undan er erfitt að sjá að þær séu óvenjulega lágar.

Til að kanna þetta betur er best að teikna gögnin í töflunni. Hægt er að gera slíkt í töflureikni (t.d. Excel), en ég hef meira gaman af því að nota tölfræði- og teikniforritið R.

R er forrit sem hlaða má niður frá vefsíðunni www.r-project.org. Það er ókeypis og lítið mál að setja það upp á flestum tölvum (sjá leiðbeiningar).

Þegar búið er að setja upp forritið og ræsa það er fyrst að ná í gögnin

>dd=read.table(“ftp://ftp.ncdc.noaa.gov/pub/data/anomalies/monthly.land_ocean.90S.90N.df_1901-2000mean.dat“,
na.strings="-999.0000",col.names=c("ár","mán","hiti"))

Þessi skipun les gögnin inn í töfluna dd. Skipunin read.table hefur marga rofa sem hægt er að stilla þegar hún er gefinn. Til að fá upplýsingar um skipanir í R er sett “?” fyrir framan skipunina, t.d.

>?read.table

sem gefur meiri upplýsingar um skipunina read.table en góðu hófi gegnir.  Hér gefum við tvo rofa , sá fyrri na.strings segir read.table að meðhöndla -999.000 sem “gildi vantar” (NA).  Seinni rofinn gefur dálkunum nafn. Hvorugur rofinn er nauðsynlegur (sjálfgefin dálkheiti eru V1, V2 og V3) með því að gefa dálkum nafn verða þær skipanirnar sem fylgja læsilegri.

Skipunin

> dim(dd)
[1] 1560    3

segir okkur að taflan sé 1560 línur og 3 dálkar (þetta breytist milli ára).

Fyrstu gildin í töflunni má skoða með:

> dd[1:5,]
ár mán    hiti
1 1880   1 -0.0491
2 1880   2 -0.2258
3 1880   3 -0.2095
4 1880   4 -0.1221
5 1880   5 -0.1279

og þær síðustu

> dd[1555:1560,]
ár mán   hiti
1555 2009   7 0.5655
1556 2009   8 0.6053
1557 2009   9 0.6126
1558 2009  10 0.5673
1559 2009  11     NA
1560 2009  12     NA

Tölurnar lengst til vinstri eru línunúmer töflunnar, “ár”, “mán” og “hiti” eru dálkheitin. Takið eftir að hitatölurnar í línum 1559 og 1560 vantar, en þetta eru tölur fyrir nóvember og desember 2009 (en þau gildi eru óþekkt þegar þessi pistill er skrifaður). Í stað tölu er NA sem segir R að meðhöndla þær sérstaklega.

Til að teikna hitagögnin þarf einungis

> plot(dd$hiti)

Það hefði mátt nota dd[,3] í stað dd$hiti, fyrri aðferðin vitnar í dálkinn eftir númeri hans, sú seinni eftir nafni (sem er skýrara). Mynd 1 sýnir niðurstöðuna.

Mynd 1

Mynd 1

Þessi skipun teiknar hitann sem fall af  línunúmerum. Greinilega hlýnar með hækkandi línunúmeri. Ef við viljum hafa eitthvað annað en línunúmer á x-ásnum þurfum við að segja plot skipuinni frá því.  Það dugir nota skipunina seq() en hún býr til raðir.

> tt=seq(1880,2010-1/12, length.out=1560)
> plot(tt,dd$hiti)

Hér býr seq(1880,2010-1/12,length.out=1560) til tímaás sem hefur 1560 gildi. Þó þessi ás sé réttur þá hefur R betri aðferðir við að vinna með dagsetningar (meira um það síðar).

Mynd 2 er því sambærileg við mynd 1 en hefur x-ás sem gengur frá 1880 út árið 2009. Ef mynd 2 er skoðuð sjást tveir óvenju hlýir mánuðir skömmu fyrir aldamótin og eftir aldamótin. Með því að skoða töfluna á vefsíðu NCDC sést að hlýjasti mánuðurinn í röðinni er febrúar 1998, og janúar 2007 sá næst hlýjasti. Í fyrra tilvikinu var öflugasti ElNino sem vitað er um á fullu, í því síðara var snubbóttur ElNino í gangi (lista með mánaðartölum fyrir ElNino má sjá í fyrirlestri sem uppfærður er reglulega  hjá annarri undirstofnun bandarísku veðurstofunnar).

Mynd 2

Mynd 2

Til að kanna fullyrðinguna að síðustu vetur séu óvenjukaldir er best að skoða styttra tímabil. Það getum við gert með því að skorða x-ásinn við árin eftir 1980. Í skipuninni hér að neðan er y-ásinn líka stilltur þannig að gögnin fylli sem best út flötinn, auk þess sem ásar eru eru merktir og myndin titluð.

plot(tt,dd$hiti,xlim=c(1980,2010),ylim=c(-0.2,0.9),
main="Mánaðarhitafrávik (NCDC)",xlab="Ár",
ylab="Hitafrávik (°C)")
grid()

Við að skoða mynd 3 er ljóst að nýlega hafa verið einstaka óvenju kaldir mánuðir (sérstaklega janúar og febrúar 2008), og þar þarf að  fara aftur til áranna 1995 fram yfir aldamót til að sjá annað eins. En voru þessir mánuðir nægilega kaldir til að draga vetrarmeðaltalið niður?

mynd3

Mynd 3

Til að kanna það er fljótlegast að reikna þriggja-mánaða miðjað hlaupandi meðaltal. Þannig fæst röð með þar sem hvert gildi er meðaltal þriggja gilda, t.d. verður janúar gildið meðaltal desember, janúar og febrúar í upprunalegu röðinni.  Í R dugir filter skipunin vel fyrir þetta. Þriggja mánaða hlaupandi meðaltal fæst með skipuninni:

filter(dd$hiti,c(1,1,1)/3)

og við  bætum þessari línu (rauðlitaðri) á myndina með skipuninni

lines(tt,filter(dd$hiti,c(1,1,1)/3),col='red')

Nú eigum við bara eftir að merkja inn janúarmánuðina á rauðu línuna (en þeir eru meðaltal desember, janúar og febrúar frávika, þ.e. þeir eru vetrarmeðaltalið). Til að hirða janúarmánuðina úr tímaásnum má enn og aftur nota seq skipunina til að hirða 12 hvert gildi. Skipunin

seq(1,1560,by=12) býr til listann 1,13,25,….1549 og 12 hvert gildi í tt fæst með

tt[seq(1,1560,by=12)]

Hornklofinn við tt inniheldur tilvísanir á stök vigursins tt. Eitt af því snjalla við R er að hægt er að setja slíkar tilvísanir beint aftan við föll sem skila vigrum sem úttaki. Með því að bæta sömu seq skipuninni aftan við filter skipunina er  má  hirða vetrarmeðaltölin frá úttaki  filter. Til að merkja inn punkta notum við skipunina points, og bætum loks við

points(tt[seq(1,1560,by=12)],
filter(dd$hiti,c(1,1,1)/3)[seq(1,1560,by=12)],col='red',pch=19)

Mynd 4 sýnir niðurstöðuna. Ef við skoðum nýlega vetur þá eru 2004/5, 2005/6 og 2008/9 álíka hlýir, 2006/8 er hlýjasti veturinn á myndinni, en 2007/8 er kaldur. Þessi síðastnefndi er á svipuðu róli og 2000/1, 1995/6 1996/7

Mynd 4

Mynd 4

Svo niðurstaðan er þessi. Síðasti vetur var ekki kaldur. Veturinn þar á undan var álíka kaldur og vetur upp úr aldamótunum og nokkrum árum þar á undan. Hlýjasti vetur raðarinnar var fyrir þremur árum.

Staðhæfingin

“As the world has already been through two of its coldest winters for decades, with all the signs that we may now be entering a third…”

er því röng.

Það er svo annað mál að höfundur virðist telja að tveir kannski þrír vetur í röð nægi til að   gera út um málið. Slíkt er auðvita af og frá. Ef myndin er skoðuð vel má finna kólnun þrjá eða fjóra vetur í röð skömmu fyrir 1985, 1995 og um aldamótin. Samt er áberandi hlýnun í röðinni.

Eins og áður sagði er greinin í heild sinni er uppfull af vafasömum og kolröngum fullyrðingum. Þegar ég las hana datt mér í hug að hún væri skriflegt Gish gallop, en sú tækni gengur út á að drekkja andstæðingnum með flóði vafasamra fullyrðinga.  En það má furðu sæta þegar höfundur er með fullyrðingar sem einungis þarf nokkurra mínótna vinnu til að hrekja.

mynd5

Mynd 5

Viðauki

Fyrir þá sem hafa áhuga á að ná sér í R og prófa að teikna  þessa röð, þá hef ég með R-forrit sem sækir gögnin,  teiknar NCDC hitaröðina, bætir við bestu línu og merkir. Tímaásinn á þessari mynd er gerður með því að nota sérstakt dagsetningarform (en amk. tvö slík eru í R). Þessi útgáfa ætti því ekki að úreldast strax, því hún á að vera rétt þó fleiri mánuðir bætist við í safnið hjá NCDC. Til að nota forritið þarf að hlaða því niður í þá möppu sem R notar sem vinnusvæði

(getwd() skilar því). Síðan þarf bara að gefa skipunina

source(“teiknaNCDC.R”)

Leiðbeiningar um uppsetningu R

Athugasemdir

ummæli

About Halldór Björnsson

Halldór Björnsson. Menntun: Doktorspróf í haf- og veðurfræði frá McGill háskóla í Montreal, Kanada. Sérþekking: Veðurfarsfræði. Helstu verkefni: Úrvinnsla veðurfarsgagna, rekstur reiknilíkana (hafhringrás og hafís), þróun hugbúnaðar og rannsóknir.