問題タブ [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 での stemCompletion の最大の妥当なサイズ?
26 個のプレーン テキスト ファイルのコーパスがあり、それぞれが 12 ~ 148kb、合計 1.2Mb です。Windows 7 ラップトップで R を使用しています。
通常のクリーンアップ作業 (ストップワード、カスタム ストップワード、小文字、数字) をすべて実行し、語幹補完を行いたいと考えています。例に示すように、元のコーパスを辞書として使用しています。いくつかの単純なベクトルを試して、(約 5 項で) まったく機能することを確認しましたが、非常に迅速に機能しました。
昨日の16時から稼働中!診断中の R Studio では、リクエスト ログに異なるリクエスト番号の新しいリクエストが表示されます。タスクマネージャーは、メモリをいくらか使用していることを示していますが、異常な量ではありません。私はそれを止めたくありません。進行状況を確認する方法の他のアイデアはありますか?残念ながら、それは揮発性のコーパスですか? 所要時間についてのアイデアはありますか? dtm 名ベクトルを辞書として使用し、最も頻繁に (または高い tf-idf) で切り捨てることを考えましたが、このプロセスを強制終了することには消極的です。
これは通常の Windows 7 ラップトップで、他の多くのものが実行されています。
このコーパスは、stemCompletion には大きすぎますか? Python に移行する以外に、stemCompletion を実行したり、副幹をレンマライズしたりするより良い方法はありますか? 私の Web 検索では答えが得られませんでした。
r - パッケージ「tm」を介してRにpdfをインポートする
パッケージ「tm」を介して「R」ワークスペースでpdfを取得する実際の例は知っていますが、コードがどのように機能しているかを理解できないため、目的のpdfをインポートできません。次のコードでインポートされた pdf は "tm" vignette です。
コードは
「tm」はビネットです。私が持ち込もうとしているpdfは「違う」ですが。上記のコードを変更して、pdf をワークスペースに表示する方法を教えてください。minnは、インポートしようとしている pdf ドキュメントです。
お気に入り
r - R でテキスト データの各行の ngram を計算する
次の形式のデータ列があります。
文章
tau
おそらくパッケージのtextcnt()
関数を使用して、このデータセットの各行の 3 グラムを計算したいと思います。しかし、試してみると、列全体の ngram を持つ 1 つの数値ベクトルが得られました。この関数をデータ内の各観測に個別に適用するにはどうすればよいですか?
r - RのreadPDF(tmパッケージ)
Rでオンラインpdfドキュメントを読み込もうとしましたreadRDF
。関数を使用しました。私のスクリプトは次のようになります
pdftotext
R は、実行中のコマンドのステータスが 309 であるというメッセージを表示しました。別のオプションを試しました。ただし、同じメッセージです。作成されたテキスト ファイルにはコンテンツがありません。
r - tm パッケージの readPDF を使用して PDF を読み込もうとするとエラーが発生する
(Windows 7/R バージョン 3.0.1)
コマンドと結果のエラーの下:
この問題を解決するにはどうすればよいですか?
編集私
(ベンによって提案され、ここで説明されているように)
Xpdfをダウンロードし、32 ビット版を にコピーし
C:\Program Files (x86)\xpdf32
、64 ビット版
を にコピーしましたC:\Program Files\xpdf64
環境変数pdfinfo
とpdftotext
は、32 ビット (R 32 ビットでテスト済み) または 64 ビット (R 64 ビットでテスト済み) のそれぞれの実行可能ファイルを参照しています。
編集Ⅱ
非常に紛らわしい観察の 1 つは、新しいセッション (ロードされていない tm) から開始して、最後のコマンドだけでエラーが発生することです。
関数変数が tm.readPDF でまだ定義されていないため、これはまったくわかりません。以下では、関数 pdf が「自然に」および tm.readPDF によって返されるものを参照していることがわかります。
どうやら違いはありません。では、なぜ readPDF を使用するのでしょうか。
編集Ⅲ
pdf ファイルは次の場所にあります。C:\Users\Raffael\Documents
編集 IV
最初の命令pdf()
は - の呼び出しtm:::pdfinfo()
であり、最初の数行でエラーが発生します。
どうやらtempfile()
単にファイルを作成しないようです。
フォルダC:\Users\Raffael\AppData\Local\Temp\RtmpquRYX6
は存在し、いくつかのファイルを保持していますが、名前が付けられていませんpdfinfo8d437bd65d9
。
r - 単語を数えるためにtm辞書に近接ルールを実装する方法は?
目的
ドキュメントに「love」という単語が表示される回数を数えたいのですが、「not」という単語が前に付いていない場合に限ります。 」は出演としてカウントされません。
質問
tm パッケージをどのように使用して進めますか?
Rコード
以下は、上記を行うために変更したい自己完結型のコードです。
さらに詳しい情報
商用パッケージの WordStat から辞書ルール機能を再現しようとしています。辞書ルールを利用することができます。
「概念の正確な測定を達成するための、単語、単語パターン、フレーズ、および近接規則 (NEAR、AFTER、BEFORE など) で構成される階層コンテンツ分析辞書または分類法」
また、この興味深い SO の質問に気付きました:オープンソースのルールベースのパターン マッチング / 情報抽出フレームワーク?
更新 1: @Benのコメントと投稿に基づいて、私はこれを取得しました (ただし、最後はわずかに異なりますが、彼の回答に強く触発されているため、彼の功績によるものです)
次に、行のサブセット設定と行の減算を行う必要があると思います。これにより、次のような結果になります
data.table を使用して最後の行を取得する方法はわかりませんが、このアプローチは WordStats の「NOT NEAR」辞書関数に似ています。たとえば、この場合、「愛」という単語が 1 単語以内に表示されない場合にのみカウントします「not」という単語の直前または直後。
m-gram トークナイザーを行うとしたら、「not」という単語の両側の (m-1) 単語内に出現しない場合にのみ、「love」という単語をカウントすると言っているようなものです。
他のアプローチは大歓迎です!
r - CSV ファイルからの R テキスト マイニング ドキュメント (ドキュメントごとに 1 行)
R で tm パッケージを使用しようとしていますが、顧客からのフィードバックの CSV ファイルがあり、各行がフィードバックの異なるインスタンスになっています。このフィードバックのすべてのコンテンツをコーパスにインポートしたいのですが、DocTerms マトリックスでフィードバックを比較できるように、各行をコーパス内の異なるドキュメントにしたいと考えています。私のデータセットには 10,000 行以上あります。
もともと私は次のことをしました:
これにより、1 つのドキュメントと 10,000 行を超えるコーパスが作成されます。各行が 10,000 を超えるドキュメントが必要です。
フォルダ内に10,000以上の個別のCSVまたはTXTドキュメントを作成し、そこからコーパスを作成できると思いますが、それよりもはるかに簡単な答えがあり、各行を個別のドキュメントとして読むことができると思います.
r - 定性的ユーザーデータとテキストマイニング結果の組み合わせ
CSV には、顧客が受け取ったサービスを推奨したかどうか (1 または 0)、「rec」、および関連するコメント「comment」を示す顧客フィードバック データのペアがあります。サービスを推奨した人とそうでない人の顧客のフィードバックを比較しようとしています.
私は tm パッケージを使用して、CSV 内のすべての行をコメントのみで単純に読み取り、すべてのコメントに対して後続のテキスト マイニングを実行しました。
現在、「rec」列を含めて、推奨する顧客と推奨しない顧客のコメントを比較しようとしていますが、単一の列 CSV からコーパスを作成できませんでした。次のことを試しました。
しかし、私はエラーが発生します
トピック モデルを作成した後、「rec」コードをコメントにバインドしようとしましたが、特定のコメントが「topic」関数によってフィルター処理されてしまうため、結果のトピック モデルのドキュメント数よりも「rec」列が長くなります。
これが tm パッケージで簡単にできることでしょうか? 私は qdap パッケージをまったく使用していませんが、ここでより適切なものはありますか?
r - tm readPDF: ファイルのエラー(con, "r"): 接続を開くことができません
tm :: readPDF ドキュメントで推奨されているサンプル コードを試してみました。
しかし、次のエラーが発生します( によって返された関数を呼び出した後に発生しますreadPDF
):
すべての xpdf バイナリを現在のディレクトリにインストールしたことに注意してください (ただし、これはif
条件によって処理されます)。
編集:これはバグであることがわかりました。最も簡単な回避策は何ですか?