小编Yua*_*ang的帖子

在mutate()中调用lm()

我想知道是否可以在dplyr包的mutate()中使用lm().目前我的数据框"date","company","return"和"market.ret"可重现如下:

library(dplyr)
n.dates <- 60
n.stocks <- 2
date <- seq(as.Date("2011-07-01"), by=1, len=n.dates)
symbol <- replicate(n.stocks, paste0(sample(LETTERS, 5), collapse = ""))
x <- expand.grid(date, symbol)
x$return <- rnorm(n.dates*n.stocks, 0, sd = 0.05)
names(x) <- c("date", "company", "return")
x <- group_by(x, date)    
x <- mutate(x, market.ret = mean(x$return, na.rm = TRUE))
Run Code Online (Sandbox Code Playgroud)

现在,对于每个公司,我想通过"market.ret"进行"返回",计算线性回归系数并将斜率存储在新列中.我希望用mutate()来做,但下面的代码不起作用:

x <- group_by(x, company)
x <- mutate(x, beta = coef(lm(x$return~x$market.ret))[[2]])
Run Code Online (Sandbox Code Playgroud)

R报告的错误是:

Error in terms.formula(formula, data = data) : 
invalid term in model formula
Run Code Online (Sandbox Code Playgroud)

提前感谢任何建议!

r lm dplyr

5
推荐指数
1
解决办法
887
查看次数

无法在Atom中启动Julia(LoadError:ArgumentError:在路径中找不到Juno)

我按照Julia的主页的指示安装了Atom和uber-juno,但是当我尝试在Atom中启动Julia时,出现以下错误:

ERROR: LoadError: ArgumentError: Juno not found in path
 in require at loading.jl:249
 in include at boot.jl:261
 in include_from_node1 at loading.jl:320
 in process_options at client.jl:280
 in _start at client.jl:378
while loading C:\Users\think\.atom\packages\julia-client\script\boot.jl, in expression starting on line 36
Run Code Online (Sandbox Code Playgroud)

julia atom-editor juno-ide

5
推荐指数
1
解决办法
1954
查看次数

标签 统计

atom-editor ×1

dplyr ×1

julia ×1

juno-ide ×1

lm ×1

r ×1