0
我對R相當陌生,我喜歡理解使用「apply」 - 系列函數來避免循環和自定義函數的概念。不幸的是,我在第一次練習中失敗了。對矢量的每個獨特元素使用approxfun
這是我最小的可重複的例子:
x <- data.frame(Hours=cbind(c(rep(5,5),rep(6,5),rep(7,5),rep(8,5),rep(9,5))),Price=c(cbind(seq(48,50.4, by=0.1),seq(48,52.8, by=0.2),seq(48,55.2, by=0.3),seq(48,57.8, by=0.4),seq(48,60.0, by=0.5))),Volume=seq(10000:10024))
f1 <- approxfun(x$Volume,x$Price, rule=2)
plot(x$Volume, x$Price)
curve(f1, add=TRUE)
不過,我想在x$Hour
與每一個獨特小時進行approxfun()
。
我該如何解決這個問題?
謝謝你的幫助。
成語是分裂/應用/組合:分割數據,應用功能,合併結果。 R/* plyr/data.table等具有許多功能:'fns < - lapply(split(x,x $ Hours),function(dat)approxfun(dat $ Volume,dat $ Price,rule = 2)) ;情節(x $ Volume,x $ Price); cols < - 1;對於fn中的(fn)曲線(fn,add = TRUE,col =(cols << - cols + 1))' – jenesaisquoi
我不知道這是可以做到的。大。這對我很有幫助。如果你可以發表你的評論作爲答案,我想接受它作爲對這個問題的答案。 – lammy
很高興你有它的工作,隨時回答,如果你有動力。 – jenesaisquoi