ソース、日付、および ID 変数とともに、セマンティック タグ/セマンティック タグ カテゴリのフィールドがあります。セマンティック タグ フィールドをそれぞれのタグ/タグ カテゴリに分割してから、データセットを転置したいと考えています。私はほとんどのコードを完成させましたが、ID/日付/ソース変数を取得して、タグのカテゴリ/タグから作成したマトリックスを一覧表示することにまだ行き詰まっています。私が開始するデータの例 (タブ区切り) は次のとおりです。
ID Source Date Semantic Tags
1 thestate 2013-01-18 Person:elizabeth colbert-busch, Organization:congress
2 abcnews4 2013-04-03 PoliticalEvent:congressional race, Person:colbert busch, topicname:politics
3 Politics 2013-04-02 Person:mark sanford, Person:elizabeth colbert busch, Person:colbert busch, Organization:republican party
データをデータベース形式 (タブ区切り) のようにしたい:
ID Source Date Tag Type Tag
1 thestate 2013-01-18 Person elizabeth colbert-busch
1 thestate 2013-01-18 Organization congress
2 abcnews 2013-04-03 Political event congressional race
2 abcnews 2013-04-04 Person colbert-busch
2 abcnews 2013-04-05 topicname politics
3 Politics 2013-04-02 person mark sanford
3 Politics 2013-04-03 person elizabeth colbert-busch
3 Politics 2013-04-04 organization republican party
タグタイプとタグを分離するのに問題はありません(thnx @Tyler Rinkerの助けを借りて...)が、タグタイプ/タグをリストごとに繰り返すためにID、ソース、および日付変数を取得することに行き詰まったとき私が作成するマトリックス。誰でも助けることができますか?私のコードは以下の通りです:
et3 <- lapply(strsplit(as.character(et$Semantic.Tags), ","), function(x) gsub("^//s+|//s+$", "", x)) # break out semantic tags/tag type by comma
et3 <- lapply(et3, strsplit, ":(?!/)", perl=TRUE) # break on colon
次のコード行では、他の 3 つの変数を複製しようとしていますが、ここで問題が発生します。
Date <- rep(et$Date, seq_along(et3), sapply(et3, length))
ID <- rep(et$ID, seq_along(et3), sapply(et3, length)) # Note that if I don't use "et$ID", the IDs replicate without issue...
...変数 Source についても同様です。私が受け取った警告メッセージは次のとおりですIn rep(et$Date, seq_along(et3), sapply(et3, length)): first element used of 'length.out' argument.
。最初の値のみが出力に表示されます。最初に et3 リストをマトリックスとしてバインドすると、同じ問題が発生します。マトリックス/リストで変数を繰り返すのを手伝ってくれる人はいますか? 転置コマンドも試してみたのですが、リスト化したタグの扱いがわかりません。
誰の助けにも感謝します。