假设我有以下数据框:
df <- data_frame(
my_x1 = c(1, 11, 21),
my_x2 = c(10, 20, 30),
my_y1 = c(100, 200, 300),
my_y2 = c(400, 500, 600))
对于每一行,我想在点(x1,y1)和(x2,y2)之间进行插值,在x1和x2之间的所有整数上进行求值。
这就是我现在正在做的,它正在产生我想要的输出,但是IMO代码本身有点乱,所有的“。$”符号到处都是,并且列重命名为第二步: / p>
df2 <- df %>%
rowwise() %>%
do(., data.frame(
approx(
x=c(.$my_x1, .$my_x2),
y=c(.$my_y1, .$my_y2),
xout=.$my_x1:.$my_x2))) %>%
rename(my_x = x, my_y = y) %>%
as_data_frame()
样式方面,这是使用do()在数据帧的每一行上调用函数的正确约定,还是有更好的方法?