2
我試圖做出一個函數來確定數據幀的列中的值是否爲新的高。因此,舉例來說,如果我有以下數據:測量數據幀中以前所有值的最大值
x <- rnorm(10,100,sd=5)
x <- data.frame(x)
我怎樣才能返回,TRUE或新列,只有考慮了所有以前的值FALSE。結果表看起來是這樣的:
x new.max
1 102.42810 NA
2 109.22762 TRUE
3 101.97970 FALSE
4 101.49303 FALSE
5 93.30595 FALSE
6 96.77199 FALSE
7 110.96441 TRUE
8 96.27485 FALSE
9 101.77163 FALSE
10 100.78992 FALSE
如果我嘗試
x$new.max <- ifelse (x$x == max(x$x) , TRUE, FALSE)
結果表是以下的,因爲它計算整個列的最大值,而不是以前的所有值的子集。
x new.max
1 102.42810 FALSE
2 109.22762 FALSE
3 101.97970 FALSE
4 101.49303 FALSE
5 93.30595 FALSE
6 96.77199 FALSE
7 110.96441 TRUE
8 96.27485 FALSE
9 101.77163 FALSE
10 100.78992 FALSE
哇,謝謝。我喜歡在R中學習功能,我從來沒有新的東西。 – Kevin