【发布时间】:2014-02-14 16:00:38
【问题描述】:
是否有可能在不使用循环的情况下对数据帧的每一行进行线性回归?趋势线的输出(截距+斜率)应作为新列添加到原始数据框中。
为了让我的意图更清楚,我准备了一个非常小的数据示例:
day1 <- c(1,3,1)
day2 <- c(2,2,1)
day3 <- c(3,1,5)
output.intercept <- c(0,4,-1.66667)
output.slope <- c(1,-1,2)
data <- data.frame(day1,day2,day3,output.intercept,output.slope)
输入变量为day1-3;假设这些是连续 3 天不同商店的销售额。我想要做的是计算 3 行的线性趋势线,并将输出参数添加到原始表(参见 output.intercept + output.slope)作为新列。
该解决方案在计算时间方面应该非常有效,因为实际数据帧有许多 100k 行。
最好的,克里斯托夫
【问题讨论】:
-
什么是响应变量?
-
@SvenHohenstein 响应显示,协变量隐含为
1:3(在这种情况下),seq_len(nrow(dat))在更一般的情况下。
标签: r regression trendline