Open In App

NLP | Custom corpus

What is a corpus?
A corpus can be defined as a collection of text documents. It can be thought as just a bunch of text files in a directory, often alongside many other directories of text files.

How it is done ?
NLTK already defines a list of data paths or directories in nltk.data.path. Our custom corpora must be present within any of these given paths so it can be found by NLTK.
We can also create a custom nltk_data directory in our home directory and verify that it is in the list of known paths specified by nltk.data.path.



Code #1 : Creating a custom directory and verify.




# importing libraries
import os, os.path
  
# using the given path
path = os.path.expanduser('~/nltk_data')
  
# checking
if not os.path.exists(path):
    os.mkdir(path)
      
print ("Does path exists : ", os.path.exists(path))
  
  
import nltk.data
print ("\nDoes path exists in nltk : "
       path in nltk.data.path)

Output :



Does path exists : True
Does path exists in nltk : True

Code #2 : Creating a wordlist file.




# loading libraries
import nltk.data
  
nltk.data.load('corpora/cookbook/word_file.txt', format ='raw')

Output :

b'nltk\n'

How all this works ?

Code #3 : How to load a YAML file




import nltk.data
  
# loading file using the path
nltk.data.load('corpora/cookbook/synonyms.yaml')

Output :

{'bday': 'birthday'}

Article Tags :