Sunday, September 28, 2014
Wednesday, September 17, 2014
R package to convert statistical analysis objects to tidy data frames
Monday, September 15, 2014
Tuesday, September 09, 2014
Ceemple vs. Rcpp
Ceemple is a cool way to do C++. Rcpp is another cool way to do C++. Each of them has its own strengths and weaknesses. I am amazed to see how little change is required to get the same source to compile and run under these environments. For example, Ceemple comes with an example that uses the Eigen matrix library:
int main()
--------------------------------------------
#include <Eigen/Dense>
#include <iostream>
using namespace Eigen;
using namespace std;
int main()
{
ArrayXXf m(2,2);
// assign some values coefficient by coefficient
m(0,0) = 1.0; m(0,1) = 2.0;
m(1,0) = 3.0; m(1,1) = m(0,1) + m(1,0);
// print values to standard output
cout << m << endl << endl;
// using the comma-initializer is also allowed
m << 1.0,2.0,
3.0,4.0;
// print values to standard output
cout << m << endl;
}
-------------------------------------------
With Rcpp (using the Rstudio IDE), this becomes:
-------------------------------------------
// [[Rcpp::depends(RcppEigen)]]
#include <RcppEigen.h>
using namespace std;
using namespace Rcpp;
using namespace Eigen;
// [[Rcpp::export]]
int test_eigen()
{
ArrayXXf m(2,2);
// assign some values coefficient by coefficient
m(0,0) = 1.0; m(0,1) = 2.0;
m(1,0) = 3.0; m(1,1) = m(0,1) + m(1,0);
// print values to standard output
cout << m << endl << endl;
// using the comma-initializer is also allowed
m << 1.0,2.0,
3.0,4.0;
// print values to standard output
cout << m << endl;
return 0;
}
/*** R
test_eigen()
*/
-------------------------------------------
Virtually no changes required!
Virtually no changes required!
The rgl package needs a new libpng!
The new version of the "rgl" package (0.94.1131) requires "libpng15.so.15". On my Ubuntu 14.04 system, I have to get the source tarball, install it, and make a soft link to "/usr/lib".
Subscribe to:
Posts (Atom)