我想比较第二列的i和i + 1元素(收盘价),如果i<i+1
将第1列放在第三列。但我不知道该怎么做。
require(quantmod)
getSymbols("GOOG",src="yahoo")
data<-last(GOOG,40)
newdata<-data.frame(data[,4])
newdata
答案 0 :(得分:4)
答案 1 :(得分:2)
使用dplyr lead/lag功能:
library(dplyr)
#dummy data
set.seed(123)
mydf <- data.frame(price = runif(5))
#result
mydf %>%
mutate(price_lead = lead(price),
compare = ifelse(price < price_lead, 1, 0))
#output
# price price_lead compare
# 1 0.2875775 0.7883051 1
# 2 0.7883051 0.4089769 0
# 3 0.4089769 0.8830174 1
# 4 0.8830174 0.9404673 1
# 5 0.9404673 NA NA