这个问题是在我有很多模型类型的上下文中,每个模型类型都相同,但是每个模型的数据量很小,我想通过样条曲线获得更完整的数据集。我希望找到一种方法来做到这一点,而不必一次单独地对每个模型进行样条化。
所以我有以下df:
mydf<- data.frame(c("a","a","b","b","c","c"),c("e","e","e","e","e","e")
,as.numeric(c(1,2,3,10,20,30)),
as.numeric(c(5,10,20,20,15,10)))
给一些名字:
colnames(mydf)<-c("Model", "Class","Seconds", "Speed")
这创造了:
> mydf
Model Class Seconds Speed
1 a e 1 5
2 a e 2 10
3 b e 3 20
4 b e 10 20
5 c e 20 15
6 c e 30 10
所以我想要每个模型的秒和速度列上的样条。因此,例如,如果我在模型“a”上使用样条线,那么您只需将“a”上的那些元素作为模型进行样条线。
像:
spline(x=mydf[1:2,3], y=mydf[1:2,4])
$x
[1] 1.0 1.2 1.4 1.6 1.8 2.0
$y
[1] 5 6 7 8 9 10
这可行,但是当你有数百个模型时......
我想只使用“a”来样条“a”,然后它移动到“b”并且只使用“b”等。理想情况下,它会输出为一个新的数据框,但此时我只是不想得到一个错误.
我在 plyr 中尝试了 ddply 但出现错误。我希望避免使用循环或带有循环的函数,但如果这是唯一的选择,那么......
谢谢,如果我能改进这个问题,请告诉我。