110 likes | 288 Views
LINGUISTICA GENERALE E COMPUTAZIONALE, PARTE 2. Lezione 3: cap. 2 Ancora Python NLTK: operazioni su corpora. Per rinfrescarsi la memoria …. Lezione passata : Python: variabili , assegnamento , liste import nltk from nltk.book import * operazioni su testi :
E N D
LINGUISTICA GENERALE E COMPUTAZIONALE, PARTE 2 Lezione 3: cap. 2Ancora Python NLTK: operazionisu corpora
Per rinfrescarsi la memoria … • Lezionepassata: • Python: variabili, assegnamento, liste • import nltk • from nltk.book import * • operazionisutesti: • text1.concordance(‘whale’) • operazionisustringhe: • s1.endswith(‘s’) • controllo in Python
Python come un linguaggio ad oggetti • Anche se non sidirebbe, in Python ognidato ha un TIPO, come in Java o C++ • Per esempio, l’istruzionex = [1,2,3] automaticamenteassegna a xiltipo LISTA • La notazionetext1.concordance(‘whale’) significa: ‘applicailmetodo concordance del tipodioggetti a cui text1 appartiene (iltipo text in questocaso) a text1, passando la stringa ‘whale’ come argomenti • Vantaggi: e’ possibileusare la stessanotazione per operazionisimilisuoggettidiversi • Per esempio, x[0] sipuo’ applicaresiaquandoxe’ unalistachequandoxe’ unastringa
Due tipi didatiimportanti in linguisticacomputazionale • Testi (lezionepassata) • Corpora (questalezione)
Cos’e’ un corpus? • Unaraccoltadidocumenti • ANNOTATI omeno
Operazionisu corpora in NLTK • x.fileids() (ritorna la listadituttii files nel corpus) • x.raw(fileids=[‘austen-sense.txt’]) • x.words(fileids=[‘austen-emma.txt’])
Esempi: Gutenberg • nltk.corpus.gutenberg.fileids() • emma=nltk.corpus.gutenberg.words(fileids=[‘austen-emma.txt’]) • (p. 40)
Corpora in NLTK • Non annotati: • Gutenberg • Annotati: • Brown (POS tags) • Reuters (generedidocumenti) • Movie reviews (sentiment) • Etc (vedip. 46-47)
Crearsinuovioggettiditipo corpus • Usando le librerienltke’ possibiletrasformarequalsiasiraccoltaditesti in un oggetto ‘corpus’ dentro Python
Crearenuovioggettiditipo corpus • from nltk.corpus import PlaintextCorpusReader • corpus_root=‘/Corpora/LiberLiber’ • ll=PlaintextCorpusReader(corpus_root,’.*txt’) • ll.fileids() • ll.words(‘i_promes.txt’)
Ancora Python: riusodicodice • Caricaremodulidatesti • Funzioni