1

CAT から R にデータをエクスポートする方法について、Solomon Messing のチュートリアル (以下のリンクを参照) を使用して大成功を収めました。しかし、3/4 のコーダーだけがデータセットのコーディングを完了すると、問題が発生します。すべてのコーダーによってコーディングされていないドキュメントを削除しても、R は XML ファイルを解析できないようです。私の推測では、CAT からの XML ファイルは最初の数のドキュメントとコーダー用に設定されているため、ドキュメントとコーダーが削除されると、R スクリプトは互換性がなくなります。XML ファイルを変更したり、特定のコーダーによるコーディングを削除したりする方法はありますか? コンソール出力は次のようになります。

doc <- xmlInternalTreeParse(doc, asText=T)

xmlParseCharRef: 無効な xmlChar 値 0

xmlParseCharRef: 無効な xmlChar 値 0

xmlParseCharRef: 無効な xmlChar 値 0

xmlParseCharRef: 無効な xmlChar 値 0

エラー: 1: xmlParseCharRef: 無効な xmlChar 値 0

2: xmlParseCharRef: 無効な xmlChar 値 0

3: xmlParseCharRef: 無効な xmlChar 値 0

4: xmlParseCharRef: 無効な xmlChar 値 0

5: xmlParseCharRef: 無効な xmlChar 値 0

6: xmlParseCharRef: 無効な xmlChar 値 0

http://solomonmessing.wordpress.com/2013/02/04/cat-r-for-content-analysislabels-for-text-mining/

4

2 に答える 2

0

ありがとうソロモン!これで私の問題は解決しました。ただし、R では「paragraphCodes」を見つけるのに問題があったため、次のように、最初のスクリプトを少し再配置および変更しました。

paragraphTag <- unlist(xpathApply(doc, "//paragraph", xmlGetAttr, "paragraphTag" ))

paragraphIds <- unlist(xpathApply(doc, "//paragraph", xmlGetAttr, "paragraphId" ))

pgnum <- as.numeric(unlist(lapply(strsplit(paragraphTag, ".txt_"), function(x) x[[2]] )))

alldat$pgnum <- pgnum[match(para, paragraphIds)]

alldat$paragraphTag <- paragraphTag[match(para, paragraphIds)]

そして今、それは完璧に動作します!

于 2014-05-28T15:51:12.343 に答える
0

Wordpress からコピーしたテキストを R が窒息させていると思われます。そのブログのテキストをコピーすると、0 と ; の間に目に見えない悪い文字がありました。行で:

grep("", doc)

doc <- gsub("", "", doc)

そこに悪い文字がないことを確認してから、スクリプトを再実行してください。「 ;」をgrepすると (目に見えない余分な文字を削除した後)xmlドキュメントの22443行目にそれらの人の1人を見つけました。削除した後、これらのエラーは発生しません。

于 2014-05-27T14:26:23.563 に答える