質問

私の目標は、ランダムなテキスト、文を抽出し、句読みの削除、そしてその後、Bare文(それらのうちの1つ)に、NNまたはVBタグ付き単語をそれらの正規系on)に置き換えることができるシステムを作成することです。、ホリニムまたはシンオニム、およびWordnetシネジットからの同様の言葉。先に多くの仕事がありますが、私は最初は問題があります。

このため、パターンとTextBlobパッケージを使用します。これは私がこれまでにやったことです...

from pattern.web import URL, plaintext
from pattern.text import tokenize
from pattern.text.en import wordnet
from textblob import TextBlob
import string

s = URL('http://www.fangraphs.com/blogs/the-fringe-five-baseballs-most-compelling-fringe-prospects-35/#more-157570').download()
s = plaintext(s, keep=[])
secam = (tokenize(s, punctuation=""))
simica = secam[15].strip(string.punctuation)
simica = simica.replace(",", "")

simica = TextBlob(simica)
simicaTg = simica.words

synsimica = wordnet.synsets(simicaTg[3])[0]
djidja = synsimica.hyponyms()
.

今すぐすべてが欲しい道で動作しますが、このdjidja変数からの次のような以下のものは、Synsetオブジェクトであるため、不可能であることがわかります。

ハイズコンリストで報告されている非常に単語を抽出する方法(print(djidja[2])には、これからSynset(u'bowler')のみを抽出する方法)?

役に立ちましたか?

解決

シネセットが同義語としてマークされた単語のリストだけであることを思い出してください。日没を考えると、それを形成する単語を抽出することができます:

from pattern.text.en import wordnet
s = wordnet.synsets('dog')[0] # a word can belong to many synsets, let's just use one for the sake of argument
print(s.synonyms)
.

この出力:

Out[14]: [u'dog', u'domestic dog', u'Canis familiaris']
.

ハイパーニムとハイフニムを抽出することもできます。

print(s.hypernyms())
Out[16]: [Synset(u'canine'), Synset(u'domestic animal')]
print(s.hypernyms()[0].synonyms)
Out[17]: [u'canine', u'canid']
.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top