Bonjour,

Je me suis lancé dans le perl depuis quelques jours pour mon stage et j'aimerai faire l'interface entre perl et R. Ceci pour génerer une page presentant les résultats d'un script R.

Je suis sous windows 2000 pro et j'ai installé les dernieres version de R et Perl.
Je pense avoir réussi a installer le module Statistics::R (en faisant un copier coller de du contenu du dossier lib de l'archive dans le dossier lib de perl)

J'ai voulu test juste en utilisant des scripts proposés dans la doc du module et sur le net
mais ca ne marche pas.

voila les scripts que j'ai testés


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
 
      #!c:\perl\bin\perl.exe
 
      use Statistics::R ;
 
      my $R = Statistics::R->new() ;
 
      $R->startR ;
 
      $R->send(q`postscript("file.ps" ,horizontal=FALSE ,width=500 ,height=500 , pointsize=1)`) ;
      $R->send(q`plot(c(1, 5, 10), type = "l")`) ;
 
      $R->send(qq`x = 123 \n print(x)`) ;
      my $ret = $R->read ;
ou encore

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 
 
#!c:\perl\bin\perl.exe
 
#CALCUL DE LA BINOMIALE SOUS R A PARTIR DE PERL
use strict;
use Statistics::R;
my ($R, $var, @out);
$R=Statistics::R->new();
$R->startR;
 
#taper q pour 1 commande, et qq pour deux commandes,
#bien noter les guillemets à l'envers,
#faire le print dans R si on veut récupérer la sortie
 
$R->send(qq`x=pbinom(4, 9, 0.5) \n print(x)`);
 
#read récupère la dernière sortie de R
 
@out=split(/ /,$R->read);
#dans mon cas la ligne R commence par [1],
# d'où le besoin du splitprint "ici $out[1] \n";
 
#et on peut même passer des variables en arguments dans R
 
$var=9;
$R->send(qq`x=pbinom(5, $var, 0.5) \n print(x)`);
@out=split(/ /,$R->read);
print "la $out[1] \n";
$R->stopR();
Mais "rien ne se passe" pour le premier et pour le deuxieme seul le print final s'execute en affichant "la" sans la variable attendue.

J'ai rechercher sur le net et dans le forum si il y avait des reponses qui aurai rencontré mon probleme mais en général personne n'est bloqué a ce stade ! lol

J'ai rechercher au niveau des options du module, car je me suis dit que c'était peut etre du à des mauvais chemins, mais je n'ai pas la syntaxe pour modifier ces options.

Savez vous si ce probleme est recurant, ou si il y a quelque chose que je n ai vraiment pas compris ? C'est pas possible ca fait 2 jour que je passe sur ce pb.

J'ai aussi regardé dans la documentation et autres ouvrages, avant de vous soummettre mon probleme mais la je cale ... dès le début

Merci de votre soutient.