Optimiser le code R avec Rcpp
Romain François
Consulting Datactive, ThinkR
while( condition ){
body
}
// [[Rcpp::export]]
int power( int n ){
if( n < 0 ){
stop( "n must be positive" ) ;
}
int value = 1 ;
while( value < n ){
value = value * 2 ;
}
return value ;
}
Une fois la fonction compilée avec sourceCpp, vous pouvez l'appeler :
power( 1000 )
power( 17 )
1024
32
for( init ; condition; increment ){
body
}
équivaut à
init
while( condition ){
body
increment
}
do {
body
} while( condition ) ;
// [[Rcpp::export]]
int power( int n ){
if( n < 0 ){
stop( "n must be positive" ) ;
}
int value = 1 ;
do {
value = value * 2 ;
} while( value < n );
return value ;
}
Optimiser le code R avec Rcpp