小编ada*_*ien的帖子

copula的概率不总计为1

我正在从具有泊松边缘的二元高斯copula生成概率矩阵.我无法弄清楚为什么概率不会增加到1但会略微增加.这是代码:

library(copula) 

cop<-normalCopula(param = 0.92, dim = 2)
mv <- mvdc(cop, c("pois", "pois"),list(list(lambda = 6), list(lambda = 4)))

m <- matrix(NA,50,50)
for (i in 0:49) {
  for (j in 0:49) {
    m[i+1,j+1]=dMvdc(c(i,j),mv)
  }
}

sum(m)
[1] 1.048643
Run Code Online (Sandbox Code Playgroud)

编辑:似乎只有当param参数(相关性)与0不同时才会出现此问题.

r

22
推荐指数
1
解决办法
506
查看次数

为什么内置的lm功能在R中如此之慢?

我一直认为lmR 中的函数非常快,但正如本例所示,使用solve函数计算的闭合解更快.

data<-data.frame(y=rnorm(1000),x1=rnorm(1000),x2=rnorm(1000))
X = cbind(1,data$x1,data$x2)

library(microbenchmark)
microbenchmark(
solve(t(X) %*% X, t(X) %*% data$y),
lm(y ~ .,data=data))
Run Code Online (Sandbox Code Playgroud)

有人可以解释一下,如果这个玩具示例是一个坏的例子,或者情况lm实际上是慢的吗?

编辑:正如Dirk Eddelbuettel所建议的,由于lm需要解决公式,比较是不公平的,所以更好地使用lm.fit,不需要解决公式

microbenchmark(
solve(t(X) %*% X, t(X) %*% data$y),
lm.fit(X,data$y))


Unit: microseconds
                           expr     min      lq     mean   median       uq     max neval cld
solve(t(X) %*% X, t(X) %*% data$y)  99.083 108.754 125.1398 118.0305 131.2545 236.060   100  a 
                      lm.fit(X, y) 125.136 136.978 151.4656 143.4915 156.7155 262.114   100   b
Run Code Online (Sandbox Code Playgroud)

regression r linear-regression lm

13
推荐指数
2
解决办法
2090
查看次数

Rvest无法识别CSS选择器

我正在尝试抓取此网站:

http://www.racingpost.com/greyhounds/result_home.sd#resultDay=2015-12-26&meetingId=18&isFullMeeting=true

通过rvestR中的包装。

不幸的是,似乎rvest无法通过CSS选择器识别节点。

例如,如果我尝试提取每个表的标题(坡度,奖赏,距离)中的信息,其CSS选择器为“ .black”,然后运行以下代码:

URL <- read_html("http://www.racingpost.com/greyhounds/result_home.sd#resultDay=2015-12-26&meetingId=18&isFullMeeting=true")
nodes<-html_nodes(URL, ".black") 
Run Code Online (Sandbox Code Playgroud)

节点显示为空列表,因此不会刮任何东西。

r web-scraping rvest

2
推荐指数
1
解决办法
2737
查看次数

while循环和R中的for循环一样慢吗?

for循环在R中非常慢。我想知道while循环是否同样如此。

如果是这样,是否有一种方法可以优化R中的while循环?例如,对于for循环,apply函数发挥出色作用,但我不知道while循环的模拟方式。

甚至哈德利(Hadley)在他的书(《高级R》)中对于如何优化while循环也很模糊。

performance r while-loop

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