0

NLTK にはコーパスのサンプルがいくつか付属しています: http://nltk.googlecode.com/svn/trunk/nltk_data/index.xml

エンコーディングなしでテキストのみが必要です。そのようなコンテンツを抽出する方法がわかりません。私が抽出したいのは

1) nps_chat: 解凍後のファイル名は 10-19-20s_706posts.xml のようになります。このようなファイルは、次のような XML 形式です。

<Posts>
<Post class="Statement" user="10-19-20sUser7">now im left with this gay name<terminals>

                <t pos="RB" word="now"/>
                <t pos="PRP" word="im"/>
                <t pos="VBD" word="left"/>
                <t pos="IN" word="with"/>
                <t pos="DT" word="this"/>
                <t pos="JJ" word="gay"/>
                <t pos="NN" word="name"/>
            </terminals>

        </Post>
            ...
            ...

私はその実際の投稿だけが欲しい:

now im left with this gay name

ローカルディスクでエンコーディングを削除した後、NLTK または (何でも) 裸の投稿を保存するにはどうすればよいですか?

2) 配電盤のトランスクリプト。このタイプのファイル (ファイル名は解凍後の談話) には、次の形式が含まれます。私が望むのは、前のマーカーを取り除くことです:

o A.1 utt1: Okay, /
qy A.1 utt2: have you ever served as a juror? /
ng B.2 utt1: Never. /
sd^e B.2 utt2: I've never been served on the jury, never been called up in a jury, although some of my friends have been jurors. /
b A.3 utt1: Uh-huh. /
sd A.3 utt2: I never have either. /
% B.4 utt1: You haven't, {F huh. } /
...
... 

私だけが欲しい:

Okay, /
have you ever served as a juror? /
Never. /
I've never been served on the jury, never been called up in a jury, although some of my friends have been jurors. /
Uh-huh. /
I never have either. /
You haven't, {F huh. } /
...
... 

事前にどうもありがとうございました。

4

2 に答える 2

2

corpus readerまず、コーパスの を作成する必要があります。で使用できるコーパス リーダーには、次nltk.corpusのようなものがあります。

AlpinoCorpusReader
BNCCorpusReader
BracketParseCorpusReader
CMUDictCorpusReader
CategorizedCorpusReader
CategorizedPlaintextCorpusReader
CategorizedTaggedCorpusReader
ChunkedCorpusReader
ConllChunkCorpusReader
ConllCorpusReader
CorpusReader
DependencyCorpusReader
EuroparlCorpusReader
IEERCorpusReader
IPIPANCorpusReader
IndianCorpusReader
MacMorphoCorpusReader
NPSChatCorpusReader
NombankCorpusReader
PPAttachmentCorpusReader
Pl196xCorpusReader
PlaintextCorpusReader
PortugueseCategorizedPlaintextCorpusReader
PropbankCorpusReader
RTECorpusReader
SensevalCorpusReader
SinicaTreebankCorpusReader
StringCategoryCorpusReader
SwadeshCorpusReader
SwitchboardCorpusReader
SyntaxCorpusReader
TaggedCorpusReader
TimitCorpusReader
ToolboxCorpusReader
VerbnetCorpusReader
WordListCorpusReader
WordNetCorpusReader
WordNetICCorpusReader
XMLCorpusReader
YCOECorpusReader

次のように、コーパスからコーパス リーダーを作成したら、次のようにします。

c = nltk.corpus.whateverCorpusReaderYouChoose(directoryWithCorpus, regexForFileTypes)

次のコードを使用して、コーパスから単語を取得できます。

paragraphs = [para for para in c.paras()]
for para in paragraphs:
    words = [word for sentence in para for word in sentence]

これにより、コーパスのすべての段落のすべての単語のリストが取得されます。

お役に立てれば

于 2011-01-22T06:40:17.283 に答える
1

.words()nltkコーパスのプロパティを使用できます

content = nps_chat.words()

これにより、リスト内のすべての単語が表示されます

['now', 'im', 'left', 'with', 'this', 'gay', 'name', ...]

于 2017-02-10T03:08:39.267 に答える