小编Art*_*sov的帖子

247
推荐指数
10
解决办法
80万
查看次数

用dplyr汇总多列?

我在使用dplyr语法时遇到了一些麻烦.我有一个包含不同变量和一个分组变量的数据框.现在我想使用R中的dplyr计算每个组中每列的平均值.

df <- data.frame(
    a = sample(1:5, n, replace = TRUE), 
    b = sample(1:5, n, replace = TRUE), 
    c = sample(1:5, n, replace = TRUE), 
    d = sample(1:5, n, replace = TRUE), 
    grp = sample(1:3, n, replace = TRUE)
)
df %>% group_by(grp) %>% summarise(mean(a))
Run Code Online (Sandbox Code Playgroud)

这给出了"grp"表示的每个组的列"a"的平均值.

我的问题是:是否有可能同时获得每个组中每列的方法?或者我必须df %>% group_by(grp) %>% summarise(mean(a))为每一栏重复一次?

我想拥有的是什么

df %>% group_by(grp) %>% summarise(mean(a:d)) # "mean(a:d)" does not work
Run Code Online (Sandbox Code Playgroud)

aggregate r dplyr

141
推荐指数
5
解决办法
16万
查看次数

size_t和std :: size_t之间的区别

之间有什么区别size_tstd::size_t,当他们要使用,任何其他差异化功能在他们的声明,其中条款?

c++ size-t

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

在R中的所有括号内提取信息

我有一个字符串以及在多个括号内提取信息的内容.目前,我可以使用下面的代码从最后一个括号中提取信息.我该怎么做才能提取多个括号并作为向量返回?

j <- "What kind of cheese isn't your cheese? (wonder) Nacho cheese! (groan) (Laugh)"                                                          
sub("\\).*", "", sub(".*\\(", "", j)) 
Run Code Online (Sandbox Code Playgroud)

目前的输出是:

[1] "Laugh"
Run Code Online (Sandbox Code Playgroud)

期望的输出是:

[1] "wonder" "groan"  "Laugh" 
Run Code Online (Sandbox Code Playgroud)

regex r

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

从ROC曲线获得阈值

我有一些模型,ROCR在预测类百分比的向量上使用包,我有一个性能对象.使用规范"tpr"绘制性能对象,"fpr"给出了ROC曲线.

我正在比较假阳性率(x)的某些阈值的模型.我希望从性能对象中获得真正的正率(y)的值.更重要的是,我想获得用于生成该点的类别百分比阈值.

x-value不高于阈值的情况下最接近阈值的误报率()的索引号应该给出适当的真阳性率(y-value)的索引号.我不确定如何获得该索引值.

更重要的是,我如何获得用于表达这一点的类概率的阈值?

r roc

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

如何在R中将not.camel.case转换为CamelCase

在R中,我想转换

t1 <- c('this.text', 'next.text')
"this.text" "next.text"
Run Code Online (Sandbox Code Playgroud)

'ThisText' 'NextText'
Run Code Online (Sandbox Code Playgroud)

我试过了

gsub('\\..', '', t1)
Run Code Online (Sandbox Code Playgroud)

但这给了我

"thisext" "nextext"
Run Code Online (Sandbox Code Playgroud)

因为在这段时间之后它不会取代这封信.

可能真的很容易,但我无法解决.

camelcasing r

23
推荐指数
6
解决办法
5389
查看次数

如何制作POSIXct的空向量

我想制作一个空的矢量,POSIXct以便我可以放入POSIXct其中:

vec <- vector("POSIXct", 10)
vec
vec[1] <- "2014-10-27 18:11:36 PDT"
vec
Run Code Online (Sandbox Code Playgroud)

这不起作用.有任何想法吗?

r posixct

21
推荐指数
3
解决办法
6870
查看次数

在命令行下运行R脚本时输出错误/警告日志(txt文件)

如果我在命令行下运行R脚本(实际上是通过在VBA中调用运行它),如何将任何错误/警告消息输出到txt文件?

error-handling command-line r

17
推荐指数
2
解决办法
2万
查看次数

Rcpp Rcpp.package.skeleton("mypackage")"rcpp_hello_world"不适用于包含"mypackage"的.Call()

我已经设法Rcpp.package.skeleton在R提示符下通过以下命令在Windows中安装 -

Rcpp.package.skeleton("mypackage")
system("R CMD build mypackage")
system("R CMD INSTALL mypackage")
library(mypackage)
Run Code Online (Sandbox Code Playgroud)

这创造了mypackage.dll.但是当我执行以下命令时 -

rcpp_hello_world <- function(){ .Call( "rcpp_hello_world", PACKAGE = "mypackage")}
rcpp_hello_world()
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

Error in .Call("rcpp_hello_world", PACKAGE = "mypackage") : 
"rcpp_hello_world" not available for .Call() for package "mypackage"
Run Code Online (Sandbox Code Playgroud)

我跑了sessionInfo(),我得到以下内容:

attached base packages:
[1] tools     stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] mypackage_1.0 inline_0.3.13 Rcpp_0.11.1
Run Code Online (Sandbox Code Playgroud)

说我的新mypackage在那里.

我有什么进一步的检查可以看看发生了什么?有任何想法吗?

r rcpp

17
推荐指数
2
解决办法
5329
查看次数

R Makevars文件覆盖R CMD的默认g ++选项?

我有这个独立的C++代码,我试图将其包装在R包中.

我的问题是我绝对希望它与-O3标志一起编译 .

所以在src/Makevars我放的文件中:

PKG_CPPFLAGS = -I../inst/include
PKG_CXXFLAGS = -O3  
CXX_STD = CXX11
Run Code Online (Sandbox Code Playgroud)

当我在我的机器上安装包装时,我看到:

g++ -std=c++0x -I/usr/share/R/include -DNDEBUG -I../inst/include -O3  -fpic  -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security -D_FORTIFY_SOURCE=2 -g -c mycppfunctions.cpp -o mycppfunctions.o
g++ -std=c++0x -shared -Wl,-Bsymbolic-functions -Wl,-z,relro -o mycppfunctions.so mycppfunctions.o -L/usr/lib/R/lib -lR
Run Code Online (Sandbox Code Playgroud)

(可怕的-O2旗帜出现在右边)

所以我的问题是:如何覆盖g++调用时使用的cpp标志R CMD

编辑:

最近,在另一个包中,我找到了一种方法来为F77代码(也在R包中)做类似的事情.基本上,通过将此添加到Makevars:

PKG_FFLAGS = $(FPICFLAGS) $(SHLIB_FFLAGS) 
all: $(SHLIB)
otherf77foo.o: otherf77foo.f
    $(F77) $(PGK_FFLAGS) -O3 -pipe -g -c -o otherf77foo.o otherf77foo.f …
Run Code Online (Sandbox Code Playgroud)

c++ makefile r g++

16
推荐指数
2
解决办法
8704
查看次数