Korpusten käsittely clt131, P Luento 1

Samankaltaiset tiedostot
CLT131 Korpusten käsittely (3op)

Ctl160 Tekstikorpusten tietojenkäsittely

Ctl160 Tekstikorpusten tietojenkäsittely p.1/24

Korpusten käsittely clt131, P Luento 5

Korpusten käsittely clt131, P Luento 3

CLT131 Korpusten käsittely

Korpusten käsittely clt131, P Luento 4

Ctl160 Tekstikorpusten tietojenkäsittely p.1/15

Komentotulkki. Kysymyksiä

CLT131 Korpusten käsittely Viides luento

Korpusten käsittely clt131, P Luento 6

Ctl160 Tekstikorpusten tietojenkäsittely Kolmas luento

Kieliteknologian ATK-ympäristö Neljäs luento

Ctl160 Tekstikorpusten tietojenkäsittely p.1/28

CLT131: Tekstityökalut 2010, toinen luento

Ctl160 Tekstikorpusten tietojenkäsittely Kolmas luento,

1.1 Tekstinprosessointiohjelmien yleinen toimintatapa (1)

Asialista. hippu ja.bashrc. Asialista. Tutkimusongelma: tekstin morfologisen jäsennyksen selvittely

[Jnix näyttökoe. o ei ole sallittua käyttää mitään verkkolevyjakoa tai mitään siihen rinnastettavaa järjestelmdä.

Kieliteknologian ATK-ympäristö Viides luento

Kieliteknologian ATK-ympäristö Viides luento

CLT131: Tekstityökalut 2011, toinen luento

Luento 4. Timo Savola. 21. huhtikuuta 2006

Maastotietokannan torrent-jakelun shapefile-tiedostojen purkaminen zip-arkistoista Windows-komentojonoilla

Sisällys. Johdatus Linux/Unixiin: Osa 2. Prosessin tilat. Prosessien hallinta. Prosessien monitorointi

Kieliteknologian ATK-ympäristö Kuudes luento

Hieman linkkejä: lyhyt ohje komentoriviohjelmointiin.

TIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho. 19. tammikuuta 2012

CLT131: Tekstityökalut 2011, viides luento

CLT131: Tekstityökalut 2011, kuudes luento

Sangen lyhyt L A T E X-johdatus

linux: Ympäristömuuttujat

Johdatus Ohjelmointiin

815338A Ohjelmointikielten periaatteet Harjoitus 2 vastaukset

Johdatus L A TEXiin. Dept. of Mathematical Sciences. Tunti 1: Alkeet. Markus Harju, markus.harju at oulu.fi, M207

5. HelloWorld-ohjelma 5.1

Datatähti 2019 alku. task type time limit memory limit. A Kolikot standard 1.00 s 512 MB. B Leimasin standard 1.00 s 512 MB

CLT131: Tekstityökalut 2012, kymmenes luento

Asialista. CLT131: Tekstityökalut 2012, kymmenes luento. 2. frekvenssien muunnos todennäköisyyksiksi. 1. taulukkohaut

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin peruskurssi Y1

Metropolia Ammattikorkeakoulu

Ohjelmoinnin perusteet Y Python

Ohjelmointitaito (ict1td002, 12 op) Kevät Java-ohjelmoinnin alkeita. Tietokoneohjelma. Raine Kauppinen

Unix. Markus Norrena

CLT131: Tekstityökalut 2011, seitsemäs luento

Sekalaisia selvennyksiä

Ohjelmoinnin perusteet Y Python

Kieliteknologian ATK-ympäristö Kolmas luento

TIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho. 31. maaliskuuta 2011

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin peruskurssien laaja oppimäärä

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 16. marraskuuta 2015

Luento 5. Timo Savola. 28. huhtikuuta 2006

C-ohjelmoinnin peruskurssi. Pasi Sarolahti

Ohjelmassa henkilön etunimi ja sukunimi luetaan kahteen muuttujaan seuraavasti:

Python-ohjelmointi Harjoitus 2

Tähtitieteen käytännön menetelmiä Kevät 2009 Luento 4: Ohjelmointi, skriptaus ja Python

Ctl160 Tekstikorpusten tietojenkäsittely Viides luento

Julkaiseminen verkossa

Harjoitus 6. Käytä String-luokasta vain charat- ja length-operaatioita.

8. Näppäimistöltä lukeminen 8.1

12. Näppäimistöltä lukeminen 12.1

Sisällys. 12. Näppäimistöltä lukeminen. Yleistä. Yleistä

Pythonin Kertaus. Cse-a1130. Tietotekniikka Sovelluksissa. Versio 0.01b

Sangen lyhyt L A T E X-johdatus

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin peruskurssi Y1

4. Lausekielinen ohjelmointi 4.1

Ohjelmointitaito (ict1td002, 12 op) Kevät Java-ohjelmoinnin alkeita. Tietokoneohjelma. Raine Kauppinen

Ohjelmoinnin perusteet Y Python

CLT131: Tekstityökalut 2010, kuudes luento

TAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja tietokonetekniikan laitos. Harjoitustyö 4: Cache, osa 2

2 Konekieli, aliohjelmat, keskeytykset

Hakemistojen sisällöt säilötään linkitetyille listalle.

Ohjelmoinnin perusteet Y Python

n! k!(n k)! n = Binomikerroin voidaan laskea pelkästään yhteenlaskun avulla käyttäen allaolevia ns. palautuskaavoja.

Verilogvs. VHDL. Janne Koljonen University of Vaasa

CVS. Kätevä väline usein päivitettävien tiedostojen, kuten lähdekoodin, hallitsemiseen

Harjoitus 5. Esimerkki ohjelman toiminnasta: Lausekielinen ohjelmointi I Kesä 2018 Avoin yliopisto 1 / 5

Datatähti 2000: alkukilpailun ohjelmointitehtävä

Ohjelmoinnin peruskurssi Y1

Tehtävä: FIL Tiedostopolut

Ohjelmoinnin peruskurssi Y1

Luento 3. Timo Savola. 7. huhtikuuta 2006

1. HARJOITUS harjoitus3_korjaus.doc

5. HelloWorld-ohjelma 5.1

Ohjelmointi 1 Taulukot ja merkkijonot

Hannu Valtanen Oy. Linux vi-editori

CLT131: Tekstityökalut 2010, ensimmäinen luento

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 30. marraskuuta 2015

Harjoitus 6 (viikko 42)

MITÄ JAVASCRIPT ON?...3

8. Näppäimistöltä lukeminen 8.1

T harjoitustyö, kevät 2012

Ohjelmoinnin perusteet Y Python

4. Lausekielinen ohjelmointi 4.1

Asialista. CLT131: Tekstityökalut 2011, kahdeksas luento. Merkistöistä ja kalvostoista. Asialista. Tommi A Pirinen

Ohjelmoinnin peruskurssi Y1

Transkriptio:

Korpusten käsittely clt131, P2 2006 Luento 1 Nicholas Volk <nvolk@ling.helsinki.fi> 3.11.2006 Humanistinen tiedekunta

CLT131 Korpusten käsittely (syksy 2006) Luennoitsija FM Nicholas Volk Kurssiassistentti fil.yo. Roope Havu Laajuus: 3 opintopistettä Esitietovaatimukset: CLT130 tai vastaavat tiedot Suoritus: Annettujen tehtävien palauttaminen määräaikaan mennessä kurssiassistentille Vastaa suunnilleen vanhojen tutkintovaatimusten kurssia CTL160 (2ov)

Kurssin alustava, karkea runko Tänään: komentojonot, putkitus 2. luento: järjestäminen (abc, 123), frekvenssilista 3. luento: merkkijonojen poimiminen 4. luento: merkkijonojen poimiminen II 5. luento: merkkijonojen muokkaaminen 6. luento: merkkijonojen muokkaaminen II Viimeinen luento: kertausta, sälää, kivakivaa

Kurssin suoritus 36 tehtävää, 1 piste kustakin Palautetaan sähköpostitse osoitteeseen roope.havu@helsinki.fi CTL160 kurssia suorittavat: ottakaa yhteys luennoitsijaan Pistemäärä Arvosana 32 5 29 4 25 3 22 2

Kurssin tavoitteet 1. Oleellisten asioiden poiminta isosta tekstiaineistosta (korpuksesta) eli aineistoon keruu 2. Aineiston muokkaaminen ihmiselle tai jollekin tietokoneohjelmalle (helpommin) ymmärrettävään muotoon Tavoitteeseen pyritään Unix ja Linux käyttöjärjestelmien mukana tulevien komentorivityökalujen (komentojen) avulla. Unixeista ja niiden mukana tulevista työkaluista on eri variantteja. Keskitymme bash tulkkiin ja GNUn versioihin käskyistä.

Korpuksen määritelmä Suomen kielen perussanakirja antaa seuraavan meille sopivan määritelmän: korpus 2. kiel. tutkimuksen aineistoksi valittu kokoelma kieliainesta Tarjoaa mahdollisuuden testata tutkimushypoteeseja empiirisesti Lähdekriittisyys kuitenkin aina paikallaan...

Korpustyyppejä Kirjoitus vs. puhe Synkronia vs. diakronia Annotoitu vs. raakateksti Rekisterit Proosa Kirjeet Sanomalehtiaineisto Runous...

Merkintätavoista Kehotteen eli promptin merkkinä käytetään kurssimateriaalissa '$' merkkiä. Todellisuudessa kehotteen ulkonäkö vaihtelee käyttäjittäen ja järjestelmittäin. Käyttäjä voi myös itse muuttaa kehotteen ulkonäköä. Komennot kirjoitetaan kehotteen perään komentoriville. Materiaalissa komennot on boldattu ja koneen antama tuloste on normaalilla fontilla: $ echo 'Terve maailma' Terve maailma

Kurssimateriaalin kaatavuudesta Kurssimateriaali keskittyy (luennoitsijan mielestä) oleelliseen asiaan. Mm. Muun muassa suurin osa eri komentojen valitsimista (öh, optioista) ohitetaan surutta. Tarkempia tietoja saa komentojen ohjesivuilta mankomennon avulla man komento antaa tietoa halutusta komennostaj man k asiasana listaa komentoja, jotka liittyvät asiasanaan

Komentotulkin sanan määritelmä Kurssin kannalta epäkeskeinen ja yllättävänkin monimutkainen asia, jota en siis käsittele aihetta kattavasti kalvoilla Luennolla n. 15 min asiaa aiheesta Esimerkkejä hipsuista, välilyönneistä ja jokerimerkeistä

Potentiaalisen hipsuongelman ennakointia Joillain merkeillä on komentotulkin kannalta jokin erikoismerkitys Esim. * tarkoittaa komentotulkille mitä tahansa merkkijonoa Jos halutaan viitata itse merkkiin, ei erityismerkitykseen, viittaaminen onnistuu tyypillesti laittamalla merkin eteen kenoviiva tai laittamalla merkki yksin tai kaksinkertaisten hipsujen sisään: $ echo \* '*' * *

Yksinkertaiset hipsut Yksinkertaisten hipsujen sisällä millään merkillä ei ole erikoismerkitystä, eli kaikki merkit kahden peräkkäisen ':n välillä kuuluu komentotulkin mielestä samaan sanaan. ' merkkiä itseään ei siis voi kirjoittaa yksinkertaisten hipsujen sisälle Sen voi kuitenkin kirjoittaa välittömästi hipsujen viereen kenoviivan avulla: tr c ',.:;!?'\' Vain luennolla: komentotulkin sanan määrittely

Kaksinkertaiset hipsut Lainausmerkin sisään voi kenoviivan avulla kirjoittaa lainausmerkin: echo 28\ televisio Yksinkertaisempaa on valita käytettävät hipsut tehtävän mukaan: $ echo raa'at $ echo 'ei hauska vaan hauska '

Käskyt head ja tail head tulostaa oletusarvoisesti 10 ensimmäistä riviä syötteestä Vastaavati tail tulostaa 10 viimeistä riviä Antamalla optiona positiivinen kokonaisluku voidaan tulostaa haluttu määrä rivejä Esim. head 3 tail 1 tulostaisi syötteensä kolmannen rivin Tarkemmin luennolla: syötetyypit

Käskyt cat ja wc wc tulostaa oletusarvoisesti syötteensä rivien, saneiden ja merkkien määrän Optioiden l, w ja c avulla voi tulostaa niistä vain halutut cat komennolla voidaan katenoida yhteen tulosteeseen monen tiedosto sisällöt Komentoa käytetään usein (tarpeettomasti) yhden tiedoston tulostamiseen Optio n lisää rivinumerot tulosteesteen

Esimerkkejä $ cat yhdestoista.txt wc # turhahko cat 45 205 1636 $ wc < yhdestoista.txt # merkki on kommentti 45 205 1636 $ wc yhdestoista.txt 45 205 1636 yhdestoista.txt

wc käskyn c valitsimesta Täsmällisemmin c laskee syötteensä 8 bittisten tavujen määrän Perinteisesti (esim. ISO 8859 merkistöt) yksi tavu vastaa yhtä merkkiä ja 8 bittisellä merkistöllä pystyi kuvaamaan 256 eri merkkiä Eri alueilla käytetty eri merkistöjä (esim. meidän ääkköstuki) Nyttemmin Unicode (UTF 8) käyttää useimpien merkkien kuvaamiseen 2 tavua, sillä 16 bittinen merkkiavaruus kattaa 64K eri yhdistelmää

Sane ja sananmuoto wc käskyn yhteydessä puhuttiin saneista Sane on sananmuodon esiintymä: http://www.ling.helsinki.fi/kit/term/intro.shtml Termejä ei tosin aina käytetä käytetä näin... wc käsky laskee välimerkit saneen osiksi, lingvisti ei

STDIN Käsky(je)n saama syöte tulee joko nimety(i)stä tiedosto(i) sta tai oletussyötteenä (engl. standard input, STDIN) Oletussyöttö tulee näppäimistöltä edelliseltä komennolta putkittamalla tiedostosta uudelleenohjauksen '<' avulla Osa käskyistä tukee vain jompaa kumpaa tr käsky haluaa syötteensä aina oletussyötteestä

STDOUT Ohjelmien tuloste menee yleensä oletustulosteeseen (standard output, STDOUT) Tulostuu oletusarvoisesti näytölle Oletustulosteen voi ohjata tiedostoon >:n ja >>:n avulla > kirjoittaa tiedoston yli >> lisää tulosteen tiedoston loppuun Tulokset, joista ei olla kiinnostuneita, voidaan ohjata / dev/null nimiseen mustaan aukkoon

STDERR Virheilmoitukset tulostuvat tyypillisesti oletustulosteen sijasta standard erroriin (STDERR) STDERR:n uudelleenohjaus tiedostoon: 2> tiedosto STDERR:n uudelleenohjaus STDOUT:iin: 2>&1 Näitä ei tarvitse osata!

tr setti1 setti2 tr käskyllä voi muuttaa merkkisetin toisiksi merkeiksi Kirjainkoon pienennys: tr 'A ZÅÄÖ' 'a zåäö' Saneet omille riveilleen: tr ' ' '\n' Kirjaimet a:sta z:aan ja A:sta Z:aan ja numero 0:sta 9:ään (ja näiden osajoukot) voidaan kirjoittaa lyhyesti :n avulla, sillä (käytännössä) kaikissa tietokoneiden käyttämissä merkistöissä ne ovat aina peräkkäin

tr:n valitsimia s puristaa peräkkäiset samat merkit yhdeksi Tyhjien rivien poisto: tr s '\n' '\n' d poistaa annetut merkkilistan (toista merkkisettiä ei siis tarvita) Välimerkkien poistotapa: tr s '.,;\ ' \ kertoo, että väliviiva viittaa merkkiin itseensä eikä merkkijoukkoon X:stä Y:hyn

tr:n valitsimia (2) c tarkoittaa ensimmäisen setin komplementtia eli kaikkia muita merkkejä Välimerkkien poisto 2: tr dc 'A Za zåäöåäö \n'