0
我想根據其類別對數據集應用函數。鑑於以下數據幀按組在列上應用函數
pet <- c(rep("cat",5),rep("dog",5))
year <- c(rep(1991:1995,2))
karma <- c(5,4,1,1,1,6,4,3,2,6)
df <- data.frame(pet,year,karma)
,看起來像這樣
pet year karma
1 cat 1991 5
2 cat 1992 4
3 cat 1993 1
4 cat 1994 1
5 cat 1995 1
6 dog 1991 6
7 dog 1992 4
8 dog 1993 3
9 dog 1994 2
10 dog 1995 6
我想在每年的因緣列執行操作。如果我想申請一個功能類似總和,這可以用ddply做到:
ddply(df, .(year),summarize, sum(karma))
我將如何把它應用到我寫我自己的函數,例如
calc <- function(d,c){(d*5+c*7)/12}
其中d是與每隻給定年份的狗的業力對應的值,並且對應於貓的那些值是c。
理想情況下,我想在這個數據框中添加五個條目,其中都是,一年以及上述函數計算的karma值。這樣做的最好方法是什麼?
(如果這是微不足道的,但我真的無法找到一個類似的問題,這一次非常抱歉。)
它不應該是鈣(狗,貓)? – bouncyball
是的!好趕上@bouncyball我已經更新了 – Lucy
謝謝。這很好用! – Arc