質問

ツイートを含むデータセットがあります。オランダ語の「verhuizen」を検索しています。次のコードを実行すると、データセットからその単語を含む 2 つのツイートが取得されます。

Aah_verhuizen=Aa_en_Hunze[grepl('verhuizen', Aa_en_Hunze$twt_txt),]

[1] @Isaa_0592 正しいですか?ワーヒーン・ダン?

[2] はい、学校に行くのは簡単です、私たちはもっと勉強できます!??

次に、パッケージ tm の findAssocs を使用して、「verhuizen」に最も関連する単語を見つけるコードを実行します。

verhuizen <- c('verhuizen')
Aah.corpus <- Corpus(VectorSource(Aa_en_Hunze$twt_txt))
Aah.corpus <- tm_map(Aah.corpus, tolower) 
Aah.corpus <- tm_map(Aah.corpus, removePunctuation)
Aah.dtm <- TermDocumentMatrix(Aah.corpus)
Aah_ass_verhuizen <- findAssocs(Aah.dtm, verhuizen, 0.10)

このコードの私の結果は次のとおりです。

ワーヒーン 0.58

ドルプ0.24

isaa0592 0.24

ゲボイレン 0.22

飛行速度 0.15

findAssocs がどのようにスコアを計算するのかわかりません。例えば:なぜ「waarheen」という単語がこれほど高いスコアを獲得するのでしょうか。2 つのツイートのうち 1 つで 1 回だけ言及されています。findAssocs が関連する単語のスコアをどのように計算するのかわかりません。ヘルプ機能、グーグル、スタックオーバーフローを検索しましたが、満足のいく答えが見つかりませんでした。誰か知っていますか?

私が探している答えは次のコード行にあると思います。次の質問から得たものです。

tm::findAssocs の数学 この関数はどのように機能するのでしょうか?

function (x, term, corlimit) 
sort(round(x[term, which(x[term, ] > corlimit)], 2), decreasing = TRUE)
<environment: namespace:tm>

それは何をするためのものか?文の一部を実行して自分で理解しようとします。

test <- Aah.dtm['verhuizen', which(Aah.dtm['verhuizen', ]> 0.10)],2

これにより次のエラーが発生するのはなぜですか?

エラー:「テスト <- Aah.dtm['verhuizen', what(Aah.dtm['verhuizen', ]> 0.10)]」の予期しない ','

役に立ちましたか?

解決

関数がどのように機能するかを知りたい場合は、ドキュメントを参照するのが最も簡単な方法です。メインページは ここ, 、関数参照付き ここ そして素敵なビネット ここ.

これらで十分な詳細が得られない場合は、いつでも相談できます。 ソースコード, 、これはたまたま GPL の下で利用可能です。

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