小编lea*_*ner的帖子

加载包时禁用消息

我有一个R(ROCR)包我需要在我的R环境中加载.加载包后,将打印一组消息.这通常很好,但由于我的R脚本的输出用于进一步分析,我想完全禁用所有这些输出.我怎么做?此外,我更愿意这样做而不必修改ROCR,因此该脚本的未来用户也不必这样做.

至今:

  • sink()在这里不起作用 - 重定向stdout和std err /dev/null对我没有任何作用.
  • 不出所料,options(warnings=-1)也没有做任何事情,因为这些不是警告,本身就是印刷品.

有什么想法吗?

r messages

81
推荐指数
3
解决办法
4万
查看次数

从多个颜色的列表列表中绘制元素

我试图从列表列表中绘制元素,特别是根据它所属的类着色每个点,使用外部列表索引作为ax值,内部列表的每个元素的值作为y值.示例列表,包含2个子列表:

sample.list <- list(list("A"=0,"B"=0.14285, "C"=0.75), list("A"=0.138,"B"=0,"C"=0.1))
[[1]]
[[1]]$A
[1] 0

[[1]]$B
[1] 0.14285

[[1]]$C
[1] 0.75

[[2]]
[[2]]$A
[1] 0.138

[[2]]$B
[1] 0

[[2]]$C
[1] 0.1
Run Code Online (Sandbox Code Playgroud)

我想要的输出将绘制点的第一个子列表

(1, 0), (1, 0.14285), (1, 0.5)

(即,子列表元素沿着垂直线形成x=1),并且类似地绘制第二子列表.此外,每个子列表元素将具有不同的颜色 - A可以是红色,B绿色等.为了澄清,我试图在一个图上完成所有这些.此外,列表元素的数量可能会根据数据集而变化.任何关于如何解决这个问题的指示都非常感谢!

graphics r

5
推荐指数
0
解决办法
3959
查看次数

控制Python脚本的C++输出

我这里有点问题.我有一个Python脚本,它调用从C++编译的二进制文件.Python脚本有自己的一组输出(标准输出和错误),这些输出很容易禁用.C++二进制文件也有自己的输出集(标准输出和错误,以及其他输出); 来源可以改变,但我不是原作者.这是一个问题,因为我不想在我的最终程序中输出C++,我也不希望将来的用户需要编辑C++源代码.

我希望能够做的是有一些Python方法,它将捕获发送到标准输出或错误的C++代码输出.这可能吗?如果是这样,有人会指出我正确的方向吗?

谢谢!!

c++ python

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

多个Dicts w /同一组键

如果我有多个具有相同密钥集(并且几乎相同的值)的dicts,那么这两个dicts是否具有相同的条目顺序?或者哈希的过程不是那么可预测的?

python

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

根据列表中的名称获取平均值的简便方法

有没有简单的方法可以根据名称获取列表中项目的平均值?示例数据集:

sampleList <- list("a.1"=c(1,2,3,4,5), "b.1"=c(3,4,1,4,5), "a.2"=c(5,7,2,8,9), "b.2"=c(6,8,9,0,6))
sampleList
$a.1
[1] 1 2 3 4 5

$b.1
[1] 3 4 1 4 5

$a.2
[1] 5 7 2 8 9

$b.2
[1] 6 8 9 0 6
Run Code Online (Sandbox Code Playgroud)

我所试图做的就是类似但不相同名称的列柱之间的平均值,输出与该列平均值列表a'sb's.目前我可以做以下事情:

y <- names(sampleList)
y <- gsub("\\.1", "", y)
y <- gsub("\\.2", "", y)
y <- sort(unique(y))
sampleList <- t(as.matrix(as.data.frame(sampleList)))
t <- list()
for (i in 1:length(y)){
   temp <- sampleList[grep(y[i], rownames(sampleList)),]
   t[[i]] <- apply(temp, 2, mean)
}

t
[[1]]
[1] …
Run Code Online (Sandbox Code Playgroud)

r

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

在lme4中获取残差方差 - 协方差矩阵

我使用lme4以下方法拟合线性混合效果模型:

library(lme4)
data(Orthodont)
dent <- Orthodont
d.test <- lmer(distance ~ age + (1|Subject), data=dent)
Run Code Online (Sandbox Code Playgroud)

如果我们说通常Y = X * B + Z * d + e是线性混合效应模型的形式,那么我试图Var(Y) = Z * Var(d) * Z^t + Var(e)从模型的结果中得到.

以下配方是否是正确的方法?

k <- table(dent$Subject)[1]
vars <- VarCorr(d.test)
v <- as.data.frame(vars)
sigma <- attr(vars, "sc")
s.tech <- diag(v$vcov[1], nrow=k)
icc <- v$vcov[1]/sum(v$vcov)
s.tech[upper.tri(s.tech)] <- icc
s.tech[lower.tri(s.tech)] <- icc
sI <- diag(sigma^2, nrow=length(dent$age))
var.b <- kronecker(diag(1, nrow=length(dent$age)/k), s.tech)
var.y <- sI + var.b …
Run Code Online (Sandbox Code Playgroud)

r lme4

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

枚举N个k中k个项目的大小为N的所有组合

我有一个问题,我有k项,比方说{0,1},我必须列举所有可能的N抽奖,比方说N=3.也就是说,我试图从矢量中找到给定大小的所有可能样本,并进行替换.

我可以通过以下循环方法到达那里:

for (i1 in c(0,1)){
    for (i2 in  c(0,1)){
        for (i3 in c(0,1)){
             print(paste(i1,i2i3,collapse="_")) 
}}} 
Run Code Online (Sandbox Code Playgroud)

然而,这感觉像一个kludge.使用基础R有更好的方法吗?

r sampling

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

标签 统计

r ×5

python ×2

c++ ×1

graphics ×1

lme4 ×1

messages ×1

sampling ×1