Izlaist līdz saturam

Grāmata “Implementing Reproducible Research”

Tā kā šogad personīgi vai ar LU BF bibliotēkas palīdzību bija iespēja tikt pie vairākām jaunām grāmatām par R un statistiku, tad nolēmu ieviest mājaslapā jaunu sadaļu: Grāmatu apskats.

9781466561595Pirmā grāmata ir “Implementing Reproducible Research”, kuras redaktori V. Stodden, F.Leisch un R.D.Peng (izdevējs CRC Press). Kā jau rāda nosaukums, tad šī grāmata ir par šobrīd ļoti aktuālu tēmu – reproducējamiem pētījumiem. Diemžēl labāku latvisko tulkojumu šim terminam neatradu, jo vārds “atkārtojams” šeit nederēs (ar to apzīmē repeatable). Nezinātājiem mēģināšu ieviest skaidrību, ko tad tieši nozīmē reproducējams pētījums un ar ko tas atšķiras no atkārojama pētījuma. Ar atkārtojamu pētījumu saprot tādu pētījumu, ka izlasot pētījumu aprakstu, es varu paņemt savus datus un izdarīt visu to pašu, kas veikts konkrētajām pētījumā. Reproducējams pētījums savukārt nozīmē, ka es man ir pieejami dati, metodes, aprēķina kodi un es varu veikt tiešu to pašu, kas veikts pētījumā ar tiem pašiem datiem un, ideālā gadījumā, iegūt identisku rezultātu. Ja Jūsu pētījums ir reproducējams, tad citiem ir iespēja jebkurā laikā pārliecināties, vai visi Jūsu veiktie aprēķini ir pareizi.

Tagad par pašu grāmatu. Tā ir kā rakstu krājums, kur katrai grāmatas nodaļai ir savs autors vai autoru kolektīvs. Grāmata ir sadalīta trīs daļās: (a) Rīki (Tools) – šajā daļā ir apskatītas pāris programmas/R pakete, kas var palīdzēt reproducējamu pētījumu ieviešanā; (b) Prakses un vadlīnijas (Practicies un guidelines) – grāmatas plašākā daļa, kurā apskatīti vairāki piemēri tam, kādā veidā dažādās jomās (bioinformātika, lielapjoma skaitļošana, mākoņskaitļošana, u.c.) ir ieviesti reproducējamu pētījumu pamatprincipi; (c) Platformas (Platforms) – divas nodaļas par internetvietnēm, kas var palīdzēt organizēt darbu, kā arī nodaļa par izdevēju lomu reproducējamos pētījumos.

Tā kā šī grāmata ir izdota “The R Series” grāmatu sērīja, nelielu vilšanos sagādāja tas, ka ļoti maz ir veltīts tieši R programmas rīkiem/iespējām reproducējamu pētījumu veikšanā, jo ir zināms, ka R ir viena no piemērotākajām programmām šāda veidam procesam. Tā rezultātā bija pāris nodaļas, kurām ļoti ātri pārskrēju pāri, jo sapratu, ka tās uz mani galīgi neattiecas. Otra lieta, kas nedaudz “kaitināja”, ir atkārtošanās, sevišķi prakses sadaļā. Vairumā nodaļu atkal un atkal tiek minēts, ka jāizmanto versiju kontroles sistēmu (kas protams ir atbalstāma un pareiza ideja), turklāt bieži piedāvātais risinājums bija identisks.

No šīs grāmatas gribētos īpaši izcelt divas nodaļas: (a) “Practicing Open Sciences” (L.Ibanez, W.J.Schroeder, M.D.Hanwell) – sniegts ieskats dažādos “atvērtās” zinātnes (pētījumu) aspektos, gan runājot par atvērtiem datiem un kodiem, gan arī brīvpieeju un atvērtiem standartiem. Daudzi no šiem aspektiem, piemēram, Latvijas zinātnē ir tiešām vēl tikai attīstības sākumā, jo ik pa laikam saskaramies ar zinātniekiem, kas visus savus datus/darbus tur zem “atslēgas”, lai tik kāds nenozog; (b) “Open Science and the Role of Publishers in Reproducible Research” (I.Hrynaszkiewicz, P.Li, S.Edmunds) – šajā nodaļā apskatītas vairākas būtiskas lietas saistībā ar “atvērto” zinātni, tai skaitā juridiskie aspekti, dažādi licenzēšanas veidi, kā arī aizskarta samērā “sāpīgā” tēma par žurnālu izdevējiem, kuriem bieži esam spiesti atdot visas savas tiesības uz publicēto darbu.

Kāds tad ir kopējais secinājums par šo grāmatu – izlasot šo grāmatu, Jūs nevarēsiet uzreiz ķerties klāt reproducējamu pētījumu ieviešanai savā darba vietā, jo tā nav soli-pa-solim pamācība, bet šī grāmata  ir ļoti labs apkopojošais materiāls par to, kas reproducējams pētījums tāds ir, kādi ir virzieni, kuros skatīties, lai to ieviestu, kā arī kādas ir galvenās problēmas, ar kurām varat saskarties šī procesa ieviešanā.

RStudio jaunākā versija

Šī gada 21. jūnijā ir iznākusi jaunākā programmas RStudio versija (0.98.945). RStudio ir atvērtā koda programma (IDE), kas paredzēta darbam ar programmu R un ietver sevī daudz rīku efektīvākam darbam ar R.

Galvenie jaunumi šajā RStudio versijā ir:

  • Jaunākā R Markdown paaudze, kas ļauj radīt dokumentus ar iekļautiem R kodiem, aprēķiniem un attēliem tādos formātos kā html, pdf un MS Word, kā arī iespēja veidot prezentācijas (HTML5 vai Beamer). Šīs iespējas ir nozīmīgs solis, lai nodrošinātu savu pētījumu reproducējamību (reproducability).
  • Tagad ir iespējams veidot arī interaktīvus dokumentus, iekļaujot tajos Shiny paketes iespējas.
  • No R skripta failiem var vienkārši izveidot “pieraktus” (dažādos formātos), kas sevī ietver R kodus un rezultātus.
  • Uzlabojumi, kas saistāmi ar pakešu veidošanu, versiju kontroli.

Plašāku informāciju par jaunumiem var iegūt RStudio blogā. Pašu programmu var lejupielādēt no RStudio mājas lapas.

ggplot2 versija 1.0.0.

Šonedēļ parādījusies jaunāka versija (1.0.0.) vienai no populārākajām attēlu veidošanās R paketei ggplot2. Diemžēl papildinājumu/jaunumu skaits nav tik plašs kā varētu gaidīt pēc tik ilga versijas iztrādes laika.

Būtiskākie ieviestie jaunumi ir sekojošie:

  1. Jauna koordinātu sistēma maza mēroga kartēm – coord_quickmap().
  2. Box-plot attēliem var mainīt platumu atkarībā no novērojumu skaita (geom_boxplot() arguments varwidth=).
  3. Jauns punktu novietošanas veids position_jitterdodge().
  4. Asīm tagad var norādīt tikai vienu no robežā (min vai max), bet otra tiks aprēķināta automātiski.
  5. Jauna tēma theme_linedraw(), kas padarīs attēla elemtus tikai baltus vai melnus.
  6. Jauni tēmu argumenti panel.magin.x= un panel.margin.y=, kaus ļauj atsevišķi noteikt horizontālo un vertikālo attālu starp atsevišķām attēla daļām, ja tas ir sadalīts ar facet_..().

Pilns labojumu saraksts NEWS failā.

R 3.1.0

2014. gada 10. aprīlī izlaista jaunākā programmas R versija 3.1.0, ar nosaukumu Spring Dance.

Jaunākajā versijā veikti virkne uzlabojumu esošajās funkcijās, lai uzlabotu to darbību, kā arī novērstas kļūdas, kas pamanītas iepriekšējās versijās.

Pilnu sarakstu ar veiktajām izmaiņām var izlasīt versijas jaunu (NEWS) aprakstā.

R 3.0.0

Šodien ir liela diena programmas R lietotājiem – izlaista jaunākā R versija ar numuru 3.0.0 (tādējādi norādot, ka ir sācies jauns posms R attīstībā).

Kā jau parasti ar programmu R, ārēji izmaiņas nebūs ātri pamanāmas, toties ir vairākas būtiskas izmaiņas R darbībā:

  • tagad var veidot vektorus, kuru garums pārsniedz 2^31 (uz 64 bitu sistēmas);
  • uz 64 bitu sistēmām R var atvēlēt lielāku atmiņas daudzumu (RAM), ko ierobežo tikai OS iespējas;
  • daudzām funkcijām pievienotas jaunas iespējas, kā arī novērstas atrastās poblēmas.

Būtiskākais – uzinstalējot jaunāko R versiju, ir jāpārinstalē visas paketes, kuras Jūs izmantojat.

Vairāk informācijas par veiktajām izmaiņām un uzlabojumiem www.r-bloggers.com

Par programmu R, Excel un SPSS izmantošanu studentu apmācībā

Šodien man palūdza uzrakstīt viedokli par R, Excel un SPSS izmantošanu apmācībā. Nolēmu šo viedokli uztaisīt publisku, izveidojot ierakstu blogā. Šeit būs tikai īss viedoklis, kura galvenais uzdevums ir paskaidrot kāpēc vajadzētu izvēlēties R kā alternatīvu Excel un SPSS.

Programmām SPSS un Excel protams ir savas priekšrocības, no kurām kā galvenās no ikdienas lietotāja puses varētu minēt:

  • Intuitīva darbošanās – ar izvēlnēm var nonākt pie vēlamā rezultāta;
  • Iespēja veidot grafikus izmantojot gatavus šablonus;
  • Plaši pieejami materiāli gan latviešu, gan citās valodās;
  • Vairumam studentu ir priekšzināšanas darbā ar Excel.

Tomēr šīm programmām ir arī savi trūkumi:
Excel

  • Nav statistikas programma – attiecīgi statistiskie testi ir pieejami kā Add-in, turklāt šeit ir pieejami tikai daļa no vienkāršākajiem testiem. Nav pieejami pat neparametriskie testi paraugkopu salīdzināšanai, kas ikdienā būtu bieži izmantojami. Lai mācītu kādus papildus testu nākas izmantot arī citas programmas. Tas ir viens no galvenajiem iemesliem, kāpēc Excel vairs netiek izmantots statistikas mācīšanai LU BF.
  • Lai arī grafikus ir viegli veidot, no zinātniskā viedokļa standarta grafiki vairumā gadījumu neatbilst labai praksei tam, kā grafikam jāizskātās (trīsdimensiju grafiki, nevajadzīgi virsraksti, apzīmējumi).
  • Versijas – datorklasē visos datoros būs vienota Excel versija, bet studentiem katram būs cita versija, kas reizēm apgrūtina apmācību, jo mainās izvēļņu izkārtojums, pieejamās papildus iespējas.

SPSS

  • Programmas iespējas ir atkarīgas no papildus moduļiem, kas tiek iekļauti licenzē – pamata SPSS ļauj darīt tikai niecīgu daļu no iespējamām analīzēm. Pat par nedaudz sarežģītākām analīzēm ir jāņem papildus modulis. Šīs politikas dēļ ir bijusi situāciju, ka vienā gadā nebija iespēja mācīt visas tēmas, jo konkrētā gada licenze neparedzēja šādus analīzes veidus (tāpēc arī meklēta alternatīva R veidā)
  • Cena – nav iespējams nodrošināt, ka visiem studentiem ir pieejama programma SPSS, turklāt tādā pašā versijā kā datorklasē. Tādējādi studenti apgūst programmu SPSS, kura ārpus universitātes viņiem varbūt vairs nav pieejama. Universitātei arī nebūtu jāveicina nelegālo programmu izmantošana, jo tas visdrīzāk būs risinājums, kuru meklēs studenti.

Par R, iespējams, pilnīgi objektīvu vērtējumu vairs neesmu spējīgs sniegt, jo esmu liels šīs programmas atbalstītājs, bet tomēr mēģināšu:

Trūkumi:

  • Komandu rindas – nenoliedzami lielākais “klupšanas akmenis” gan mācoties, gan mācot programmu R ir tas, ka visas darbības notiek rakstot komandu rindas, kuras ir jāzin, vai arī jāmāk tās atrast. Turklāt, komandu rindu rakstīšana nozīmē, ka nedrīkst būt kļūdas pierakstos, pretējā gadījumā darbība netiek izpildīta. Tomēr mācību procesā ir iespējams vienkāršot šo komandu rindu rakstīšanu līdz minimumam – ir jāiemāca importēt failus (paris komandas), vajadzības gadījumā atlasīt datus, un pēc tam jau pamatstatistisko analīžu veikšanai ir gatavas funkcijas, kas veic visas nepieciešamas analīzes, piemēram, lineāra regresija – lm(), korelācija – cor(), vidējo aritmētisko salīdzināšana – t.test(). Pēc tam jau mācību procesa laikā var likt klāt jau sarezģītākas lietas, ko iespējams izdarīt R.
  • R lietotāju skaits – šobrīd starp pasniedzējiem programma R netiek plaši izmantota, kā rezultātā studentiem ir samazināta iespēja konsultēties ar saviem darba vadītājiem par praktiskām lietām datu analīzē/apstrādē. Tāpēc vienlaicīgi ar studentu apmācību, ir jādomā arī par pasniedzēju apmācību šajos jautājumos.
  • Mācību materiāli – ir piejemi plaši materiāli angļu valodā (gan grāmatas, gan bezmaksas materiāli internet), bet samērā maz ir materiālu latviešu valodā. Šo jautājumu esmu meģinājis risināt gan izveidojot R pamācības mājaslapu (http://dendro.daba.lv/R/), gan arī sākot veidot bezmaksas R grāmatu biologiem (http://dendro.daba.lv/R/gramata/)

Priekšrocības

  • Bezmaksas – programma brīvi pieejama jebkurai datorsistēmai. Var nodrošināt, ka visiem studentiem ir šī programma, turklāt visi var izmantot vienu un to pašu versiju;
  • Papildinājumi – R programma šobrīd ir pieejamas vairāk nekā 4000 oficiālās papildus paketes, plus vairāki tūkstoši citu pakešu, kas nodrošina, ka ar R var veikt lielāko daļu statistisko testu gandrīz jebkurā zinātnes virzienā;
  • Savas funkcijas – programmā R var veidots pats savas funkcijas, kuras vajadzības gadījumā var apvienot savās paketēs;
  • Grafiku veidošana – viena no labākajām R iespējām ir veidot augstas kvalitātes grafikus, kuros var kontrolēt gandrīz visus parametrus.
  • Savietojamība – ar programmu R izmantojot gan bāzes versiju, gan papildus paketes, ir iespējams importēt ļoti plašu klāstu failu (.txt, .csv, Excel, SPSS, SAS, STATA, …), importēt failus no interneta, izmantot API, veidot pieslēgumus datubāzēm (SQL).
  • Atkārtojamība – ir iespējams veidot R skripta failus, saglabājot visas darītās darbības un nodrošināt, ka arī citi var atkārtot visu, kas veikts, lai pārliecinātos par aprēķinu pareizību. Šobrīd R ir izveidotas paketes, kas nodrošina arī iespējas veidot automātisku ziņojumu veidošanu, no jauna analizējot datus.

R papildinājumi:

  • Rcmdr (Rcommander) – viena no R paketēm, kas nodrošina GUI iespējas darbā ar R, piedāvājot lietājam iespēju ar izvēlnēm importēt failus, veikt analīzes, veidot grafikus, vienlaikus arī ļaujot rakstīt komandu rindas, ja nepieciešams. Tā varētu būt laba alternatīva sākot darbu ar R un mācot pamatstatistiskos testus.
  • RStudio (http://www.rstudio.com) – atsevišķa programma (IDE), kas nodrošina saskarsni ar programmu R. Joprojām visas pamatdarbības jāveic ar komandu rindām, bet ir iespēja vienotā programmā pārvaldīt visus R komandu skriptus, grafikus, veidot projektus, veidot sasaisti ar tādām vietnēm kā github automātiskai sinhronizācijai.

reshape2 pakete

Ļoti bieži dati, kas ir jāizmanto analīzēm programmā R, ir sagatavoti nepareizā formātā, piemēram, katra mēneša dati ir savā kolonnā, bet reāli vajadzētu, ka ir viena kolonna ar mēnešu nosaukumiem, bet otrā kolonnā būtu jābūt visiem mērījumiem. Lai ērti varētu veikt datu pārveidošanu no viena formāta uz otru (no “gara” uz “platu” vai no “plata” uz “garu”), ir pieejamas vairākas funkcijas un paketes. Viena no šādām paketēm ir pakete reshape2.

Nozīmīgākās funkcijas šajā paketē ir melt() un dcast(). Funkcija melt() pārveido tabulu no “platā” formāta uz “garo”, bet funkcija dcast() tabulu pārvērš no “garā” formāta uz “plato” formātu.


> df<-data.frame(diena=c(1,2,3),janv=c(1.2,3.4,5.6),febr=c(7.8,8.9,1.7))
> df

  diena janv febr
1 1 1.2 7.8
2 2 3.4 8.9
3 3 5.6 1.7


> library(reshape2)
> df.long<-melt(df,id.vars="diena",variable.name="menesis",value.name="temp")
> df.long

  diena menesis temp
1 1 janv 1.2
2 2 janv 3.4
3 3 janv 5.6
4 1 febr 7.8
5 2 febr 8.9
6 3 febr 1.7


> df.atp<-dcast(df.long,diena~menesis)
> df.atp

  diena janv febr
1 1 1.2 7.8
2 2 3.4 8.9
3 3 5.6 1.7
Follow

Get every new post delivered to your Inbox.