2012-07-31 134 views
3

分配值這可能有一個非常簡單的答案,但我無法計算出來......R:從一列到另一

什麼是走在小區中的一個值,基於矢量的方式數據框中的一列的條件,是否滿足給定行中的某個條件,並將其分配給沿着同一行但位於不同列的單元格?我已經用循環遍歷if-else語句來完成它,但是我正在處理相當大的數據集,並且我的小型筆記本電腦在經過循環條件後停留了很多分鐘。

例如,如果我有這樣的東西:

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

工作正常。但是,什麼行不通是一樣的東西

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

在這種情況下,我得到一個警告說「項目,以取代數量不更換長度的倍數」,這我基本上採取意味着它可以」找出結果$主題列中的哪個單元格。

回答

2

由於您的問題聲明暗示,所有這些都在同一個數據幀,你可能想:

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

它屆時將有相同數量的LHS和轉讓的RHS項目。