私はいくつかのテキスト処理を行おうとしていますが、ターゲットの単語が新しい変数で特定の方法で識別されるように、文の単語を再コーディングする必要があります。たとえば、次のようなデータフレームがあるとします...
subj <- c("1", "1", "1", "2", "2", "2", "2", "2")
condition <- c("A", "A", "A", "B", "B", "B", "B", "B")
sentence <- c("1", "1", "1", "2", "2", "2", "2", "2")
word <- c("I", "like", "dogs.", "We", "don't", "like", "this", "song.")
d <- data.frame(subj,condition, sentence, word)
subj condition sentence word
1 A 1 I
1 A 1 like
1 A 1 dogs.
2 B 2 We
2 B 2 don't
2 B 2 like
2 B 2 this
2 B 2 song.
ターゲット単語のすべてのインスタンス(この例では、d $ word = "like"の場合)が0とマークされ、文ブロックの「like」より前のすべての単語が減少し、「のような」増分。各サブジェクトには複数のセンテンスがあり、センテンスは条件によって異なるため、ループでは、サブジェクトごと、センテンスごとにターゲット単語のインスタンスを考慮する必要があります。最終結果は次のようになります。
subj condition sentence word position
1 A 1 I -1
1 A 1 like 0
1 A 1 dogs. 1
2 B 2 We -2
2 B 2 don't -1
2 B 2 like 0
2 B 2 this 1
2 B 2 song. 2
質問の言い回しが不十分な場合は申し訳ありませんが、それが理にかなっていることを願っています!ターゲットは、各文の(文の先頭に対して)同じ場所にないことに注意してください。私はRにかなり慣れておらず、インクリメントまたはデクリメントする方法を理解できますが、各文ブロック内で両方を行うことはできません。これについて行くための最良の方法に関する提案はありますか?どうもありがとう!