3

これはおそらく非常に単純な答えを持っていますが、私はそれを理解するのに苦労しています...

データフレームの 1 つの列のセルで 1 つの値を取得し、特定の行のいくつかの基準が満たされていることを条件として、それを同じ行に沿って別の列にあるセルに割り当てるベクトルベースの方法は何ですか? 私は if-else ステートメントのループでそれを実行しましたが、かなり大きなデータ セットを扱っており、私の小さなラップトップはループ条件を通過するために何分間もフリーズします。

例えば。私がこのようなものを持っている場合:

Results$TResponseCorrect[Results$rownum %in% CorrectTs$rownum] <- 1

それはうまくいきます。しかし、うまくいかないのは次のようなものです

Results$TResponseCorrect[Results$rownum %in% CorrectTs$rownum] <- Results$TCorrect

その場合、「置換するアイテムの数は置換の長さの倍数ではありません」という警告が表示されます。これは、基本的に、Results$Subject 列のどのセルを取得するかを判断できないことを意味します。

4

1 に答える 1

2

問題のステートメントは、これらすべてが同じデータフレームにあることを意味するため、次のことが必要になる場合があります。

Results$TResponseCorrect[Results$rownum %in% CorrectTs$rownum] <- 
                Results$TCorrect[Results$rownum %in% CorrectTs$rownum]

割り当ての左辺と右辺に同じ数のアイテムが含まれます。

于 2012-07-31T22:31:09.573 に答える