Python - การเข้าถึง Corpora
Corpora เป็นกลุ่มที่นำเสนอชุดเอกสารข้อความหลายชุด คอลเลกชันเดียวเรียกว่าคลังข้อมูล คลังข้อมูลที่มีชื่อเสียงแห่งหนึ่งคือ Gutenberg Corpus ซึ่งมีหนังสืออิเล็กทรอนิกส์ฟรี 25,000 เล่มซึ่งโฮสต์อยู่ที่ http://www.gutenberg.org/ ในตัวอย่างด้านล่างเราเข้าถึงชื่อของไฟล์เหล่านั้นจากคลังข้อมูลซึ่งเป็นข้อความธรรมดาที่มีชื่อไฟล์ลงท้ายด้วย. txt
from nltk.corpus import gutenberg
fields = gutenberg.fileids()
print(fields)
เมื่อเรารันโปรแกรมข้างต้นเราจะได้ผลลัพธ์ดังต่อไปนี้ -
[austen-emma.txt', austen-persuasion.txt', austen-sense.txt', bible-kjv.txt',
blake-poems.txt', bryant-stories.txt', burgess-busterbrown.txt',
carroll-alice.txt', chesterton-ball.txt', chesterton-brown.txt',
chesterton-thursday.txt', edgeworth-parents.txt', melville-moby_dick.txt',
milton-paradise.txt', shakespeare-caesar.txt', shakespeare-hamlet.txt',
shakespeare-macbeth.txt', whitman-leaves.txt']
การเข้าถึงข้อความดิบ
เราสามารถเข้าถึงข้อความดิบจากไฟล์เหล่านี้โดยใช้ฟังก์ชัน sent_tokenize ซึ่งมีอยู่ใน nltk ในตัวอย่างด้านล่างเราดึงข้อมูลสองย่อหน้าแรกของข้อความ blake poen
from nltk.tokenize import sent_tokenize
from nltk.corpus import gutenberg
sample = gutenberg.raw("blake-poems.txt")
token = sent_tokenize(sample)
for para in range(2):
print(token[para])
เมื่อเรารันโปรแกรมข้างต้นเราจะได้ผลลัพธ์ดังต่อไปนี้ -
[Poems by William Blake 1789]
SONGS OF INNOCENCE AND OF EXPERIENCE
and THE BOOK of THEL
SONGS OF INNOCENCE
INTRODUCTION
Piping down the valleys wild,
Piping songs of pleasant glee,
On a cloud I saw a child,
And he laughing said to me:
"Pipe a song about a Lamb!"
So I piped with merry cheer.