到data.frame列添加特定的值,我有兩個data.frames:通過模式匹配的
pattern <- data.frame(pattern = c("A", "B", "C", "D"), val = c(1, 1, 2, 2))
match <- data.frame(match = c("A", "C"))
我要添加到我的data.frame模式稱爲new_val另一列,併爲其分配「X」來每一行,其中對於列圖案的值是在data.frame匹配否則分配 「Y」
is.element(pattern$pattern, match$match)
[1] TRUE FALSE TRUE FALSE
所以,所得到的data.frame應該像:
pattern val new_val
1 A 1 X
2 B 1 Y
3 C 2 X
4 D 2 Y
我實現了與一個醜陋的for循環做,但我相信這可以在使用花哨的東西一個一個線R命令幾乎完成:-)
有沒有人能幫忙嗎?
非常感謝!
做得好機器人安裝! – 2012-07-16 14:25:01
確實!這兩種解決方案都是優秀的R代碼,而且def優於for-loop解決方案。非常感謝! – user969113 2012-07-16 15:33:50