nltk.corpus.reader.CHILDESCorpusReader¶
- class nltk.corpus.reader.CHILDESCorpusReader[source]¶
Bases:
XMLCorpusReader
Corpus reader for the XML version of the CHILDES corpus. The CHILDES corpus is available at
https://childes.talkbank.org/
. The XML version of CHILDES is located athttps://childes.talkbank.org/data-xml/
. Copy the needed parts of the CHILDES XML corpus into the NLTK data directory (nltk_data/corpora/CHILDES/
).For access to the file text use the usual nltk functions,
words()
,sents()
,tagged_words()
andtagged_sents()
.- __init__(root, fileids, lazy=True)[source]¶
- Parameters
root (PathPointer or str) – A path pointer identifying the root directory for this corpus. If a string is specified, then it will be converted to a
PathPointer
automatically.fileids – A list of the files that make up this corpus. This list can either be specified explicitly, as a list of strings; or implicitly, as a regular expression over file paths. The absolute path for each file will be constructed by joining the reader’s root to each file name.
encoding –
The default unicode encoding for the files that make up the corpus. The value of
encoding
can be any of the following:A string:
encoding
is the encoding name for all files.A dictionary:
encoding[file_id]
is the encoding name for the file whose identifier isfile_id
. Iffile_id
is not inencoding
, then the file contents will be processed using non-unicode byte strings.A list:
encoding
should be a list of(regexp, encoding)
tuples. The encoding for a file whose identifier isfile_id
will be theencoding
value for the first tuple whoseregexp
matches thefile_id
. If no tuple’sregexp
matches thefile_id
, the file contents will be processed using non-unicode byte strings.None: the file contents of all files will be processed using non-unicode byte strings.
tagset – The name of the tagset used by this corpus, to be used for normalizing or converting the POS tags returned by the
tagged_...()
methods.
- words(fileids=None, speaker='ALL', stem=False, relation=False, strip_space=True, replace=False)[source]¶
- Returns
the given file(s) as a list of words
- Return type
list(str)
- Parameters
speaker – If specified, select specific speaker(s) defined in the corpus. Default is ‘ALL’ (all participants). Common choices are ‘CHI’ (the child), ‘MOT’ (mother), [‘CHI’,’MOT’] (exclude researchers)
stem – If true, then use word stems instead of word strings.
relation – If true, then return tuples of (stem, index, dependent_index)
strip_space – If true, then strip trailing spaces from word tokens. Otherwise, leave the spaces on the tokens.
replace – If true, then use the replaced (intended) word instead of the original word (e.g., ‘wat’ will be replaced with ‘watch’)
- tagged_words(fileids=None, speaker='ALL', stem=False, relation=False, strip_space=True, replace=False)[source]¶
- Returns
the given file(s) as a list of tagged words and punctuation symbols, encoded as tuples
(word,tag)
.- Return type
list(tuple(str,str))
- Parameters
speaker – If specified, select specific speaker(s) defined in the corpus. Default is ‘ALL’ (all participants). Common choices are ‘CHI’ (the child), ‘MOT’ (mother), [‘CHI’,’MOT’] (exclude researchers)
stem – If true, then use word stems instead of word strings.
relation – If true, then return tuples of (stem, index, dependent_index)
strip_space – If true, then strip trailing spaces from word tokens. Otherwise, leave the spaces on the tokens.
replace – If true, then use the replaced (intended) word instead of the original word (e.g., ‘wat’ will be replaced with ‘watch’)
- sents(fileids=None, speaker='ALL', stem=False, relation=None, strip_space=True, replace=False)[source]¶
- Returns
the given file(s) as a list of sentences or utterances, each encoded as a list of word strings.
- Return type
list(list(str))
- Parameters
speaker – If specified, select specific speaker(s) defined in the corpus. Default is ‘ALL’ (all participants). Common choices are ‘CHI’ (the child), ‘MOT’ (mother), [‘CHI’,’MOT’] (exclude researchers)
stem – If true, then use word stems instead of word strings.
relation – If true, then return tuples of
(str,pos,relation_list)
. If there is manually-annotated relation info, it will return tuples of(str,pos,test_relation_list,str,pos,gold_relation_list)
strip_space – If true, then strip trailing spaces from word tokens. Otherwise, leave the spaces on the tokens.
replace – If true, then use the replaced (intended) word instead of the original word (e.g., ‘wat’ will be replaced with ‘watch’)
- tagged_sents(fileids=None, speaker='ALL', stem=False, relation=None, strip_space=True, replace=False)[source]¶
- Returns
the given file(s) as a list of sentences, each encoded as a list of
(word,tag)
tuples.- Return type
list(list(tuple(str,str)))
- Parameters
speaker – If specified, select specific speaker(s) defined in the corpus. Default is ‘ALL’ (all participants). Common choices are ‘CHI’ (the child), ‘MOT’ (mother), [‘CHI’,’MOT’] (exclude researchers)
stem – If true, then use word stems instead of word strings.
relation – If true, then return tuples of
(str,pos,relation_list)
. If there is manually-annotated relation info, it will return tuples of(str,pos,test_relation_list,str,pos,gold_relation_list)
strip_space – If true, then strip trailing spaces from word tokens. Otherwise, leave the spaces on the tokens.
replace – If true, then use the replaced (intended) word instead of the original word (e.g., ‘wat’ will be replaced with ‘watch’)
- corpus(fileids=None)[source]¶
- Returns
the given file(s) as a dict of
(corpus_property_key, value)
- Return type
list(dict)
- participants(fileids=None)[source]¶
- Returns
the given file(s) as a dict of
(participant_property_key, value)
- Return type
list(dict)
- age(fileids=None, speaker='CHI', month=False)[source]¶
- Returns
the given file(s) as string or int
- Return type
list or int
- Parameters
month – If true, return months instead of year-month-date
- MLU(fileids=None, speaker='CHI')[source]¶
- Returns
the given file(s) as a floating number
- Return type
list(float)
- childes_url_base = 'https://childes.talkbank.org/browser/index.php?url='¶
- webview_file(fileid, urlbase=None)[source]¶
Map a corpus file to its web version on the CHILDES website, and open it in a web browser.
- The complete URL to be used is:
childes.childes_url_base + urlbase + fileid.replace(‘.xml’, ‘.cha’)
If no urlbase is passed, we try to calculate it. This requires that the childes corpus was set up to mirror the folder hierarchy under childes.psy.cmu.edu/data-xml/, e.g.: nltk_data/corpora/childes/Eng-USA/Cornell/??? or nltk_data/corpora/childes/Romance/Spanish/Aguirre/???
The function first looks (as a special case) if “Eng-USA” is on the path consisting of <corpus root>+fileid; then if “childes”, possibly followed by “data-xml”, appears. If neither one is found, we use the unmodified fileid and hope for the best. If this is not right, specify urlbase explicitly, e.g., if the corpus root points to the Cornell folder, urlbase=’Eng-USA/Cornell’.
- abspath(fileid)[source]¶
Return the absolute path for the given file.
- Parameters
fileid (str) – The file identifier for the file whose path should be returned.
- Return type
- abspaths(fileids=None, include_encoding=False, include_fileid=False)[source]¶
Return a list of the absolute paths for all fileids in this corpus; or for the given list of fileids, if specified.
- Parameters
fileids (None or str or list) – Specifies the set of fileids for which paths should be returned. Can be None, for all fileids; a list of file identifiers, for a specified set of fileids; or a single file identifier, for a single file. Note that the return value is always a list of paths, even if
fileids
is a single file identifier.include_encoding – If true, then return a list of
(path_pointer, encoding)
tuples.
- Return type
list(PathPointer)
- encoding(file)[source]¶
Return the unicode encoding for the given corpus file, if known. If the encoding is unknown, or if the given file should be processed using byte strings (str), then return None.
- ensure_loaded()[source]¶
Load this corpus (if it has not already been loaded). This is used by LazyCorpusLoader as a simple method that can be used to make sure a corpus is loaded – e.g., in case a user wants to do help(some_corpus).
- open(file)[source]¶
Return an open stream that can be used to read the given file. If the file’s encoding is not None, then the stream will automatically decode the file’s contents into unicode.
- Parameters
file – The file identifier of the file to read.
- raw(fileids=None)[source]¶
- Parameters
fileids – A list specifying the fileids that should be used.
- Returns
the given file(s) as a single string.
- Return type
str
- property root¶
The directory where this corpus is stored.
- Type