小编Mar*_*rco的帖子

从SAS访问R

我在同一台PC上安装了SAS(9.3)和R(2.14.0),我想使用submit / R;和在SAS中提交R语句endsubmit;.

然而:

SAS option RLANG is valid only at startup of the SAS System. The SAS option is
ignored.
Run Code Online (Sandbox Code Playgroud)

你能解释一下如何绕过这个障碍吗?

r sas

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

R:dplyr 代表什么

dplyr是一个用于数据操作的 R 包。

但是 dplyr 代表什么?

(我认为“d”代表数据。)

r dplyr

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

Kullback-Leibler分歧

我编写了一个函数来计算Kullback-Leibler从N(mu2,sigma2)到N(0,1)的偏差.

mu1 <- 0
sigma1 <- 1
f <- function(mu2, sigma2)
{
      g <- function(x)
      {
            (dnorm(x, mean=mu1, sd=sigma1, log=TRUE) -
             dnorm(x, mean=mu2, sd=sigma2, log=TRUE)) *
             dnorm(x, mean=mu1, sd=sigma1)
      }
      return(integrate(g, -Inf, Inf)$value)   
} 
Run Code Online (Sandbox Code Playgroud)

例如,从N(5,1)到N(0,1)的KL偏差是

> f(5, 1)
[1] 12.5
Run Code Online (Sandbox Code Playgroud)

我确信这个结果是正确的,因为我在手边计算了一个闭合形式的表达式,它给出了从N(mu2,sigma2)到N(mu1,sigma1)的KL偏差.

我的问题是关于flexmix包中的KLdiv函数.为什么它不会产生相同的结果?它实际计算的是什么?

> library(flexmix)
> x <- seq(-4, 12, length=200)
> y <- cbind(norm1=dnorm(x, mean=0, sd=1), norm2=dnorm(x, mean=5, sd=1))
> KLdiv(cbind(y))
         norm1    norm2
norm1 0.000000 7.438505
norm2 7.438375 0.000000
Run Code Online (Sandbox Code Playgroud)

而不是使用KLdiv,您如何看待以下过程:

> x <- rnorm(1000)
> dist <- mean(dnorm(x, …
Run Code Online (Sandbox Code Playgroud)

r

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

R中的显式公式与符号导数

我想评估一些功能的更高阶导数˚Fř.我有两种可能性.

  1. 任一予确定的一般表达式˚F (K) ,所述ķ的第衍生物˚F(我在我的特定情况下这样做),然后我评价它;
  2. 或者我利用R的能力来执行符号导数(函数D()).

1比2的优点是什么?让我们说f (k)不是递归公式.如果f (k)是递归的怎么办?

任何提示将不胜感激.

r derivative

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

删除R中的部分图形

这是从R获得的图片(代码如下).

我想以pdf格式导出它.

但是,我想首先删除右侧的图例栏.

据我所知,没有可选参数来控制这个条形图例.

你会怎么做?

在此输入图像描述


library(gplots)

f <- function(x, y, theta)
{
  num <- (x^(-theta) + y^(-theta) - 1)^(-1 / theta)
  denom <- x * y
  return(num / denom)
}

x <- y <- seq(0.01, 0.18, 0.01)
z <- outer(x, y, FUN=f, theta=2/3)

levels=seq(0, 36, 3)
draw.contour <- function()
{
  contour(x=x, y=y, z=z, add=TRUE, 
          levels=levels,
          drawlabels=TRUE,
          labcex=0,
          xlim=rev(range(x)),
          ylim=rev(range(y)))
}

par(mgp=c(2, 0.5, 0))
filled.contour(x=x, y=y, z=z,
               levels=levels, 
               col=colorpanel(length(levels) + 1, "white", "grey10"),
               xlim=rev(range(x)),
               ylim=rev(range(y)),
               plot.axes={axis(1, c(0.18, 0.01), …
Run Code Online (Sandbox Code Playgroud)

plot r contour

3
推荐指数
2
解决办法
3633
查看次数

加快手工制作的Cox模特适合(vs`s survival :: coxph`)

下面,我将R函数的结果与我自己的代码进行比较.该算法简单地包括最大化许多参数的函数(这里,19).我的代码定义了函数和nlm优化用途.幸运的是,两者都返回相同的结果.但是,R功能非常快.因此,我怀疑我可以比使用nlm(或R中的类似优化例程)做得更好.任何的想法?


以下是一些可以使用Cox模型的生存数据.为此,需要最大化部分对数似然(维基百科链接中的第3个等式).

R,这可以用coxph()(部分survival包)完成:

> library(survival)
> fmla <- as.formula(paste("Surv(time, event) ~ ", 
+                          paste(names(data)[-(1:3)], collapse=" +")))
> mod <- coxph(formula=fmla, data=data)
> round(mod$coef, 3)
    x1     x2     x3     x4     x5     x6     x7     x8     x9    x10    x11    x12    x13    x14    x15 
-0.246 -0.760  0.089 -0.033 -0.138 -0.051 -0.484 -0.537 -0.620 -0.446 -0.204 -0.112 -0.089 -0.451  0.043 
   x16    x17    x18    x19 
 0.106 -0.015 -0.245 -0.653
Run Code Online (Sandbox Code Playgroud)

这可以通过显式写入部分对数似然并使用一些数值优化例程来检查.这是一些粗略的代码来完成这项工作.

代码已根据我收到的评论进行了编辑

> #------ minus …
Run Code Online (Sandbox Code Playgroud)

optimization r

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

标签 统计

r ×6

contour ×1

derivative ×1

dplyr ×1

optimization ×1

plot ×1

sas ×1