Ligipääs DEA tekstidele

Lisaks dea.digar.ee kasutajaliidesele on teinekord vaja tekstidele otseligipääsu. Selle jaoks on digilabor kasutusele võtnud JupyterLab keskkonna, kus on võimalik ligi pääseda soovitud tekstide toorandmetele, nendega töötada R või Python koodi kaudu ja nii andmeid kui analüüsitulemusi endale arvutisse laadida ja teistega jagada.

JupyterLab keskkonna kasutamiseks on vajalik kasutajanimi. Selle saamiseks kirjutage digilab@rara.ee.

Tekstide kasutamisel ja taaskasutamisel tuleb jälgida litsentsitingimusi.

Kirjeldus

Joonis 1. dea.digar.ee kollektsiooni sisu. Avatud ligipääs on rohelistele numbritele. Punased numbrid on ligipääsetavad Rahvusraamaatukogus autoriseeritud töökohal või lepingu alusel.
  • Digiteeritud Eesti Artiklid on otsitavad veebiliidese kaudu https://dea.digar.ee/ ja ligipääsetav ka andmestikuna. Ülevaade andmestikust on eraldi lehel.
  • Andmetele pääseb ligi JupyterHub pilvekeskkonna kaudu, kus saab jooksutada Jupyter Notebooke ja kirjutada R-i ja Pythonit.
  • JupyterHub keskkonnas on ligipääs täistekstidele ja metaandmetele, võimalus kirjutada oma analüüs ja laadida alla oma leiud. Andmed on avatud kõigile kasutamiseks.

Kuidas alustada

  • Keskkonna kasutamiseks on vajalik teha endale kasutajanimi ETAISi. Kasutajanime saamiseks pöörduge aadressile data@digar.ee or digilab@rara.ee.
  • Andmestikule mugavaks ligipääsuks on loodud R pakett digar.txts, mille kaudu saab eraldada tervikkollektsioonist osa ning teha otsinguid täistekstil.
  • Andmete töötlusel on võimalik kasutada enda koodi, toetuda mõnele näidisanalüüsile või võtta välja otsingu tulemused tabeli kujul.

Lühidalt

Märkusi

  • Tartu Ülikooli võrgus on ka ligipääs võimalik RStudio kaudu https://rstudio.hpc.ut.ee/. Tulevikus peaks saama RStudio kaudu ligi ka iga kasutaja.

JupyterHub-iga alustamine

  • Vali esimene pakutud variant (1 CPU core, 8GB memory, 6h timelimit). See avab andmetöötluse akna kuueks tunniks. Kõik teie failid säilitatakse teie kasutajanime juures püsivalt.
  • Oota kuni masin käivitub. See võib võtta mõne minuti olenevalt järjekorrast. Mõnikord on abi ka lehe värskendamisest (refresh).
  • Õnnestunud käivitamise korral näete midagi sellist. Vasakul on failid ja sinna saab neid üles laadida (üles noolega nupp või tiri failid sellesse kasti) või luua uusi faile (+ märk). Paremal koodiaknad, märkmikud ja materjalid. Näites on just avatud uus Jupyteri Notebook.
  • Notebook-is saab kasutada Pythonit või R-i. Märkmikku kasutades tuleb valida neil õige arvutussisu (kernel). Seda saab teha dokumenti luues või juba loodud dokumendis Kernel -> Change Kernel või paremal ülal vajutada kerneli nimel. Siis avaneb järgmine vaade.
  • Ligipääs tekstidele on praegu R-i kaudu. Soovitan on teha esialgne päring nende vahenditega ja kasutada pärast seda endale meelepäraseid vahendeid.

Pakett

Ligipääs failidele on toetatud R-i paketi poolt digar.txts, mis paari lihtsa käsuga 1) annab ülevaate andmekogust koos seostega failidele, 2) võimaldab moodustada andmestikust vajalikke alamhulki, 3) võimaldab teha tekstiotsingut ja 4) võimaldab otsingu tulemustes võtta välja leidude vahetu konteksti. Otsingu tulemused võib edasi salvestada ka tabelisse ja töötada juba väiksema koguga edasi mujal.

Need käsud on: - get_digar_overvew() - loeb sisse ülevaate tervst kollekstioonist (numbrite tasandil) - get_subset_meta() - loeb sisse alamhulga metainformatsiooni (artikli tasandil) - do_subset_search() - teostab alamhulgas otsingu ja salvestab tulemused faili (artiklite kaupa) - get_concordances() - leiab otsingutulemustest konkordantsid (s.t. otsingusõna ja selle vahetu konteksti)

Vahepealseks töötluseks sobivad igasugu R-i paketid ja käsud. Töötluseks Pythonis tuleks andmed enne kokku koguda ja teha uus Pythoni märkmik.

Koodi kasutamine

  1. Kõigepealt tuleb installida digar.txts pakett
#Kuna JupyterHub ei anna kirjutamisõigust kõigile failidele, teeme kõigepealt kohaliku kataloogi, kuhu pakett installida.
dir.create("R_pckg")
remotes::install_github("peeter-t2/digar.txts",lib="~/R_pckg/",upgrade="never")
  1. Käivitage installitud pakett
library(digar.txts,lib.loc="~/R_pckg/")
  1. Kasuta get_digar_overview() käsku andmestiku sisust ülevaate saamiseks
all_issues <- get_digar_overview()
  1. Ehita oma valim andmetest kasutades R-i käske. Siin on tidyverse stiilis näide.
library(tidyverse)
subset <- all_issues %>%
    filter(DocumentType=="NEWSPAPER") %>%
    filter(year>1880&year<1940) %>%
    filter(keyid=="postimeesew")
  1. Hangi alamhulga metainformatsioon (iga artikli kohta) käsuga get_subset_meta(). Juhul kui me kasutame seda infot korduvalt on soovitav metaandmestik salvestada faili. Täismetaandmestikuks on meil vaja ka varem võetud ülevaadet all_issues.
subset_meta <- get_subset_meta(subset)
#potentially write to file, for easier access if returning to it
#readr::write_tsv(subset_meta,"subset_meta_postimeesew1.tsv")
#subset_meta <- readr::read_tsv("subset_meta_postimeesew1.tsv")
  1. Teeme märksõnaotsingu käsuga do_subset_search(). See salvestab otsingu tulemused faili artiklite kaupa. Käsk vaikimisi eirab suur ja väiketähti.
do_subset_search(searchterm="lurich", searchfile="lurich1.txt",subset)
  1. Loe sisse otsingu tulemused failist. Edasi saab kasutada R-i tööriistu töötluseks. Kasulik on nimetada otsingu tulbad ümber id-ks ja txt-ks.
texts <- fread("lurich1.txt",header=F)[,.(id=V1,txt=V2)]
  1. Hangi otsingusõnad lähemas kontekstis ehk konkordantsd käsuga get_concordances()
concs <- get_concordances(searchterm="[Ll]urich",texts=texts,before=30,after=30,txt="txt",id="id")

Märkus: et kasutada ctrl+shift+m klahve %>% toru kirjutamiseks Jupyteris, tuleb lisada väike koodijupp. Selleks mine Settings -> Advanced Settings Editor… -> Keyboard Shortcuts vasakul pool User Preferences kastis ja lisa sinna järgnev kood. ctrl+shift+m peaks nüüd töötama.

{
    "shortcuts": [
         {
            "command": "notebook:replace-selection",
            "selector": ".jp-Notebook",
            "keys": ["Ctrl Shift M"],
            "args": {"text": '%>% '}
        }
    ]
}

Lihtsamad R-i käsud

  • <- - salvesta väärtused
  • %>% - ‘toru’ mis suunab väärtusi edasi
  • filter() - vii oma andmed läbi filtri (säilitades sobivad väärtused)
  • count() - loenda väärtuste esinemisi
  • mutate() - loo uus tulp (saab kasutada nt n(), row_number(), min(), max() uute väärtuste arvutamisel)
  • head(n) - võta esimesed n rida

Avatud teadus

Andmetega töötamisel soovitame lähtuda avatud teaduse põhimõtetest. Selle tööriista kontekstis vaata selleks inglisekeelset juhendit siin.

JupyterHub keskkonna kasutamiseks logige sisse aadressil jupyter.hpc.ut.ee.

Perioodiliselt uuendatav ülevaade DEA tekstide kollektsioonist on näha siin.

Käsud on koondatud R-i paketti, mis on hoiustatud githubis https://github.com/peeter-t2/digar.txts. Kood töötab ETAIS keskkonnas pärast sisse logimist. Andmed on hoiustatud ETAIS-i serveris ja ligipääsetavad paketi abil (vt juhend) või käsureal.

Liitu Eesti Rahvusraamatukogu uudiskirjaga

    AVATUD
    RaRa väike maja
    E-R 10—20
    L 12—19
    P Suletud

    RaRa saatkond Solarises
    E-P     10—19
    KONTAKT

    Eesti Rahvusraamatukogu
    Narva mnt 11, 15015 Tallinn
    +372 630 7100
    info@rara.ee
    rara.ee

    linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram