jjzjj

c++ - 加载 Rcpp 并运行示例代码

我是R的新手,我对Rcpp有疑问。从这个URLhttp://www.r-bloggers.com/installing-rcpp-on-windows-7-for-r-and-c-integration/我已按照所有步骤安装Rcpp。我还安装并加载了RcppClassic和Rinside。当我尝试运行建议的代码时:#installpackagesinstall.packages(c("Rcpp","rbenchmark","inline","Runit"))#loadmaintwopackageslibrary(Rcpp)library(inline)#dosomethingwithR

c++ - 如何在 C++/Rcpp 中进行快速百分位数计算

我有一个包含一堆double元素的大vector。给定一个百分位数vector数组,例如percentile_vec=c(0.90,0.91,0.92,0.93,0.94,0.95)。我目前正在使用Rcppsort函数对大vector进行排序,然后找到相应的百分位值。主要代码如下://[[Rcpp::export]]NumericVectorsort_rcpp(Rcpp::NumericVector&x){std::vectortmp=Rcpp::as>(x);//orNumericVectortmp=clone(x);std::sort(tmp.begin(),tmp.end());

C++11 与 R 和 Rcpp : supported by CRAN policies?

ThisblogentryDirkEdelbuettel说:Rcpp,asaCRANpackage,followsCRANpolicyinnot(yetatleast)supportingthisstandard[C++11]foritspurportednon-portablestatus.该博客条目已有两年历史,我一直想知道这是否仍然正确(关于CRAN政策,我没有在其中找到任何关于C++11和Rcpp支持的提示)。此外,我想知道这到底是什么意思。我在src/MAKEVARS文件中使用了CXX_STD=CXX11语句(而不是Sys.setenv("PKG_CXXFLAGS"="-st

c++ - Rcpp 可以替换 R 中的 unif 函数吗?

我刚刚开始使用R中的Rcpp包,我的学习受到了HadleyWickham的AdvancedR类(class)的启发。在Rstudio中,我有以下.cpp文件。这个问题更笼统,但这个例子有帮助。#includeusingnamespaceRcpp;//[[Rcpp::export]]NumericVectorrunifC(intn,doublemin=0,doublemax=1){NumericVectorout(n);for(inti=0;i当我获取/保存文件时,它会显示性能输出。Unit:nanosecondsexprminlqmeanmedianuqmaxnevalRunif-12

使用RCPP和CMAKE安装R软件包时,请使用另一个编译器

我在做什么我正在开发带有RCPP和CMAKE的C++代码的R接口/软件包。因为openmp和c++11应该支持,因此我偏爱编译器。问题我知道我总是可以将makevars放在下面~/.R(UNIX)在安装软件包时更改编译器R的使用。但是作为开发人员,不建议这样做。建议使用configure档案做到这一点。但是,我不太知道如何实现这一目标,因为我在写作configure我自己申请并打电话cmake在我的里面configure。我不知道该写什么configure文件以搜索特定的编译器。希望描述很清楚。谢谢你。我附上了我的configure下面的文件内容。```set-xset-ewhichcmake

c++ - 如何更改和设置 Rcpp 编译参数

我创建了一个新的Rcpp包(通过使用RStudio)。此包包含使用以下编译器选项编译的C++函数:clang++-I/Library/Frameworks/R.framework/Resources/include-DNDEBUG-I/usr/local/include-I/usr/local/include/freetype2-I/opt/X11/include-I"/Library/Frameworks/R.framework/Versions/3.2/Resources/library/Rcpp/include"-fPIC-Wall-mtune=core2-g-O2-cRcppE

c++ - 如何使用 Rcpp 和内联设置 g++ 编译器标志?

我想设置-std=c++0x,使用带内联的Rcpp。我看到了R:C++Optimizationflagwhenusingtheinlinepackage但不想在系统范围内进行更改,所以我在Dirk的回答中尝试了选项2。我试过:settings=getPlugin("Rcpp")settings$Makevars[length(settings$Makevars)+1]="CXXFLAGS=$(CXXFLAGS)-std=c++0x"fun=cxxfunction(signature(x_="numeric"),src,plugin="Rcpp",settings=settings,ve

c++ - 使用 Rcpp 运行已编译的 C++ 代码

我一直在学习DirkEddelbuettel的Rcpp教程:http://www.rinfinance.com/agenda/我已经学会了如何将C++文件保存在目录中并在R中调用和运行它。我正在运行的C++文件称为“logabs2.ccp”,其内容直接来自Dirk的一张幻灯片:#includeusingnamespaceRcpp;inlinedoublef(doublex){return::log(::fabs(x));}//[[Rcpp::export]]std::vectorlogabs2(std::vectorx){std::transform(x.begin(),x.end()

c++ - R 中的算术在数字上比在整数上更快。这是怎么回事?

我正在将一些主要使用数字数据(即double)的代码转换为整数,并进行了快速基准测试以查看我获得了多少效率。令我惊讶的是它慢了......大约20%。我以为我做错了什么,但原始代码只是对中等大小的vector进行一些基本的算术运算,所以我知道不是这样。也许我的环境搞砸了?我重新启动,结果相同……整数效率较低。这开始了一系列测试和跳入兔子洞。这是我的第一个测试。我们使用基本R的sum对一百万个元素求和。请注意,对于R版本3.5.0,时间有很大不同,对于v3.5.1,时间大致相同(仍然不是人们所期望的):set.seed(123)int1e6从现在开始,版本3.5.0和3.5.1给出几乎相

c++ - 尝试使用 Rcpp 编译 c++11 时出现 g++ 错误

系统规范:操作系统-MacOSX10.6.8(SnowLeopard)g++-Macportsgcc4.8.1_2+universalR-2.15.3Rcpp-0.10.3当我尝试编译在R中使用C++11的函数(通过Rcpp)时,我一直收到错误-由于某种原因,g++无法识别-std=c++11选项。这个例子取自Rcpp帮助文件(它不包含任何特定于C++11的内容,但可以说明我的问题所在)。如果我尝试运行:require(Rcpp)Sys.setenv("PKG_CXXFLAGS"="-std=c++11")cppFunction(plugins=c("cpp11"),'intuseCp