EDIT: Here is a snippet from one of my Perl scripts which demonstrates setting variables, running R commands from within Perl, and running R scripts from within Perl. The only thing it is really missing is an example of retrieving a value from an R variable (e.g., $value_returned_from_R = $R->get('some.r.variable') ):
my $R = Statistics::R->new(); $R->set( 'filenames', \@filenames ); $R->set( 'id', $id ); $R->set( 'par1', $par1 ); $R->set( 'par2', $par2 ); $R->run_from_file( "genoplot_by_id.build_df.R" ); $R->run_from_file( "genoplot_by_id.build_plot.R" ); $R->run( qq`setwd("$plot_dir")` ); $R->run( qq`ggsave( filename = paste("$plot_path", "$plot_format", sep = "."), plot = geno.plot, width = $plot_width, height = $plot_height)` );
EDIT #2: A couple more examples... Using an array of R commands or a heredoc with multiple R commands (example taken from Statistics::R):
# Array of R commands: my $out1 = $R->run( q`a <- 2`, q`b <- 5`, q`c <- a * b`, q`print("ok")` ); # Here-doc with multiple R commands: my $cmds = <<EOF; a <- 2 b <- 5 c <- a * b print('ok') EOF my $out2 = $R->run($cmds);
In reply to Re: Calling R in perl
by frozenwithjoy
in thread Calling R in perl
by blackzero
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |