Learn R Programming

RcppClassicExamples (version 0.1.3)

RcppDataFrame: Rcpp::DataFrame example for Rcpp -- deprecated API

Description

A DataFrame can be passed C++ and can be instantiated as a corresponding C++ object using the Rcpp API.

This example shows (in the corresponding C++ code) how to access, modify and create a data frame.

Note that the RcppClassic package has been deprecated since 2010, all new development should use the Rcpp package instead.

Arguments

Author

Dirk Eddelbuettel and Romain Francois

Details

Usage of Rcpp::DataFrame is fully defined in the respective header file.

The C++ source file corresponding to the this function does the following (inside of a try/catch block):


      // construct the data.frame object
      Rcpp::DataFrame DF = Rcpp::DataFrame(Dsexp);

// and access each column by name Rcpp::IntegerVector a = DF["a"]; Rcpp::CharacterVector b = DF["b"]; Rcpp::DateVector c = DF["c"]; // do something a[2] = 42; b[1] = "foo"; c[0] = c[0] + 7; // move up a week

// create a new data frame Rcpp::DataFrame NDF = Rcpp::DataFrame::create(Rcpp::Named("a")=a, Rcpp::Named("b")=b, Rcpp::Named("c")=c);

// and return old and new in list return(Rcpp::List::create(Rcpp::Named("origDataFrame")=DF, Rcpp::Named("newDataFrame")=NDF));

See Also

See the RcppExamples-package for examples of the recommended Rcpp API and Rcpp-package for documentation on the recommended API to extend R with C++ code, while the deprecated RcppClassic-package documents the older, deprecated API.

Examples

Run this code
  if (FALSE) {
  RcppDataFrame()
  }

Run the code above in your browser using DataLab