問題タブ [tm]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - tm_map(..., tolower) でテキストを小文字に変換中にエラーが発生しました
を使ってみましたtm_map
。次のエラーが発生しました。どうすればこれを回避できますか?
c - tmの使用例
現在の日付がこの形式で書かれている場合の使用例をtm
教えてください(それを初期化する方法がわかりません) 。struct
y/m/d
r - Unicode 文字をより適切に処理するためにカスタム removePunctuation() 関数を作成する方法は?
tm text-mining R パッケージのソース コードのファイルtransform.RにはremovePunctuation()
、現在次のように定義されている関数があります。
科学会議からいくつかの要約を解析してマイニングする必要があります (彼らの Web サイトから UTF-8 としてフェッチされます)。要約には、特に単語境界で削除する必要がある Unicode 文字が含まれています。通常の ASCII 句読点文字だけでなく、いくつかの Unicode ダッシュ、Unicode 引用符、数学記号...
テキストには URL もあり、単語内の句読点文字を保持する必要がある句読点があります。tmの組み込みremovePunctuation()
機能が過激すぎる。
removePunctuation()
したがって、要件に応じて削除を行うためのカスタム関数が必要です。
カスタム Unicode 関数は現在このようになっていますが、期待どおりに動作しません。私は R をめったに使用していないので、R で物事を成し遂げるには、最も単純なタスクであっても時間がかかります。
私の機能:
期待どおりに動作しません。と思いますが、何の役にも立ちません。句読点はまだ用語文書マトリックス内にあります。次を参照してください。
だから私の質問は:
- function(){} を呼び出しても期待どおりの結果が得られないのはなぜですか? どうすれば機能を改善できますか?
\P{ASCII}
ifなどの Unicode 正規表現パターン クラス\P{PUNCT}
は、R の perl 互換正規表現でサポートされていますか? PCREでは (デフォルトでは) そうではないと思います: : "最も重要なものはサポートされていますが、\p を使用したさまざまな Unicode プロパティのサポートのみが不完全です。"
r - 用語ごとの頻度-RTMDocumentTermMatrix
私はRに非常に慣れていないので、DocumentTermMatrixsに頭を悩ませることはできません。TMパッケージで作成されたDocumentTermMatrixがあり、その中に用語頻度と用語がありますが、それらにアクセスする方法がわかりません。
理想的には、私はしたい:
現在、私のコードは次のとおりです。
これはstr(dtm)からの出力です
ありがとうございました、
-A
r - R を使用して文字ベクトル内の単語のスペルミスを検索 - 「逆」スペル チェッカー
大規模なデータベースをテキスト マイニングして、観測のコメント フィールドに特定のフレーズが出現したことを示すインジケーター変数を作成しています。コメントは技術者によって入力されたものであるため、使用される用語は常に一貫しています。
ただし、技術者が単語のスペルを間違えた場合があるため、私の grepl() 関数は、(スペルが間違っていても) フレーズが観測で発生したことを検出しません。理想的には、フレーズ内の各単語を関数に送信できるようにしたいと考えています。これにより、その単語のいくつかの一般的なスペルミスやタイプミスが返されます。そのようなR関数は存在しますか?
これにより、コメント フィールド内のフレーズのスペル ミスのすべての可能な組み合わせを検索し、それを別のデータ フレームに出力することができました。このようにして、発生した事象を個別に調べて、関心のある現象が技術者によって実際に説明されたかどうかを判断することができました。
私はグーグルで検索しましたが、Rの実際のスペルチェックパッケージへの参照しか見つかりませんでした。私が探しているのは「逆」スペルチェッカーです。私が探しているフレーズの数は比較的少ないので、現実的には手動でスペルミスをチェックすることができます。将来のテキスト マイニングの取り組みのために、この機能が R パッケージに組み込まれていると便利だと思いました。
お時間をいただきありがとうございます!
r - R tm removeWords ストップワードがストップワードを削除しない
私は R tm パッケージを使用していtm_map
ますが、テキストの要素を削除する関数はほとんど機能していません。
「動作する」とは、たとえば次のように実行することを意味します。
しかし、私が走るとき
私はまだ得る:
...など、その他のストップワードがたくさんあります。
何か問題が発生したことを示すエラーは表示されません。これが何であるか、ストップワード削除機能を正しく機能させる方法、または何が問題なのかを診断する方法を知っている人はいますか?
アップデート
以前にキャッチできなかったエラーがあります。
tmでストップワードを削除しているのはWekaですよね?これは私の問題でしょうか?
更新 2
このことから、このエラーは無関係のように見えます。ストップワードではなく、データベースに関するものです。
r - Rでtf-idf重み付けを機能させようとしています
tm パッケージを使用して非常に基本的なテキスト分析を行い、tf-idf スコアを取得しようとしています。OS X を実行しています (ただし、Debian Squeeze でこれを試してみましたが、同じ結果が得られました)。いくつかのテキスト ファイルを含むディレクトリ (作業ディレクトリ) があります (最初のファイルにはUlyssesの最初の 3 つのエピソードが含まれ、2 つ目のファイルには 2 番目の 3 つのエピソードが含まれます)。
R バージョン: 2.15.1 SessionInfo() tm について次のように報告します: [1] tm_0.5-8.3
関連するコードのビット:
重み付けは、私が望む重み付けされた tf-idf スコアではなく、デフォルトの用語頻度 (tf) のままであるように見えることに注意してください。
明らかな何かが欠けている場合はお詫びしますが、私が読んだドキュメントに基づいて、これはうまくいくはずです。過ちは、間違いなく、星にあるのではありません...
r - Rtmコーパスオブジェクトのサンプルを分割
私はRtmパッケージを使用して、コーパスをトレーニングセットとテストセットに分割し、これを選択のためにメタデータにエンコードしようとしています。これを行う最も簡単な方法は何ですか(サンプルを半分に分割しようとしていると仮定します)?
これが私が試したいくつかのことです:
- 私がタイプするとき、私はそれを知っています...
IDは表示されますが、アクセスできないようです(前半はあるセットに属し、後半は別のセットに属していると言うため)。 rownames(attributes(d)$DMetaData)
インデックスを教えてくれますが、これは見苦しく、要因です。
- ここで、データフレームに変換した後、dが私のデータセットであると言うと、次のようになります。
しかし、どうすれば簡単に次のようなことができますか...
...次のような結果を得るには:
残念ながら、meta(d,"ID")
機能しませんが、meta(d[[1]],"ID") == 1
機能しますが、冗長です。メタIDにアクセスするベクトル全体の方法、または「分割」メタ変数にサブセット化して割り当てる一般的にスマートな方法を探しています。
r - RでkoRpusオブジェクトからコンテンツを抽出するにはどうすればよいですか?
私は tm パッケージを使用しており、R を使用してドキュメントの Flesch-Kincaid スコアを取得しようとしています。ただし、返されたオブジェクトは非常に複雑な s4 オブジェクトのようで、解析方法がわかりません。
したがって、これをコーパスに適用します。
x は、Ovid に適用される flesch.kincaid のベクトルです。
戻り値 grade=13.62 と age=18.62 だけを取得するにはどうすればよいですか? str(x) は非常に大きいため、解析が困難です。つまり、次のようになります。
理想的には、FK スコアを tm の meta(d) に割り当てたいと思います。
この戻りオブジェクトを理解し、その値を取得する方法を学んでいただければ幸いです。また、FK スコアを取得するためのより優れた、より高速な方法が他にある場合は、私はすべて耳を傾けます!