Le forum du Master ESA économétrie et statistique appliquée - Université d'Orléans

Vous n'êtes pas identifié.

Annonce

Vous êtes sur le forum du master ESA !

Le site du master ESA - description de la formation, notes de cours, contacts... vient de déménager !!!

Venez visiter notre nouveau site : www.master-esa.fr

#1 22-05-2019 12:47:14

elsa.a
Member
Date d'inscription: 04-09-2016
Messages: 20

Macro programmation/automatisation language R

Bonjour,

Est-ce que parmi vous quelqu'un saurait comment créer des macro variables, et des macro programmes comme il est possible de le faire sous SAS mais sous R? Par exemple je souhaite changer la date des fichiers que j'importe ainsi que le nom des dataframes pour ne pas tout recoder.
Pour le moment mes recherches sont infructueuses (mais je persévère !). Ce que j'ai trouvé pour le moment m'oriente vers la fonction paste mais je ne suis pas sûr que cela soit ce qu'il me faut.
Un coup de pouce serait le bienvenu.

Merci d'avance.

Hors ligne

 

#2 22-05-2019 20:18:58

elsa.a
Member
Date d'inscription: 04-09-2016
Messages: 20

Re: Macro programmation/automatisation language R

J'ai reçu un message m'indiquant que je ne n'étais pas claire dans ma demande donc d'une part je vais reformuler cela de manière plus concrète et d'autre part je remercie la personne de m'avoir alertée et de vouloir m'aider. (Pour que tout le monde en profite je réponds sur le forum).

Par exemple si nous étions en SAS macro nous pourrions faire ce-ci :

%macro monprg(annee);

data table&annee.;
....
run;

%mend;

%monprg(2015)
%monprg(2016)
%monprg(2017)

Ou encore
%let annee=2015;
infile "monchemin/dossier&annee.";

J'aimerais donc faire l'équivalent en R.

Je précise aussi que la fonction paste n'était pas une bonne piste (ou alors il faudrait peut-être la combiner à autre chose...)

Hors ligne

 

#3 23-05-2019 18:14:46

Hugobine
Member
Date d'inscription: 06-09-2017
Messages: 41

Re: Macro programmation/automatisation language R

Salut elsa, as tu essayé de faire tout simplement une boucle for ?

Ce lien pourrait peut être t'aider :
https://www.developpez.net/forums/d1657 … ers-csv-r/

Hors ligne

 

#4 23-05-2019 20:33:57

Sadou
New member
Date d'inscription: 24-09-2018
Messages: 5

Re: Macro programmation/automatisation language R

Bonsoir, elsa
si j'ai bien compris votre question, vous avez deux solutions

1-) stocker la valeur annee dans une variable annee: par exemple 
            annee=2015
           + votre code r ....  (bien entendu vous utiliserez annee à l'interieur de votre programme)
           puis lancer le programme.
      il vous suffit alors de modifier la valeur de votre variable annee pour relancer le programme de nouveau .par exemple: annee=2016 

2-) utiliser rmarkdown avec inclusion du code r et vous choisirez comme paramètre,annee (soit en input slider soit en input select)

Hors ligne

 

#5 24-05-2019 13:47:09

elsa.a
Member
Date d'inscription: 04-09-2016
Messages: 20

Re: Macro programmation/automatisation language R

Vos idées me semblent toutes les deux très bonnes! je vous remercie. En plus je pense que je ne suis pas la seule sur le forum pour qui se sera très utile.

Hors ligne

 

#6 28-05-2019 07:54:53

elsa.a
Member
Date d'inscription: 04-09-2016
Messages: 20

Re: Macro programmation/automatisation language R

Un jeune ESA m'a aussi gentiment répondu et m'a proposé cette solution, je la partage avec vous :

import=
  function(x) {
 
  lien1="C:/Users/GodIsLord/Desktop/ksh" #ici tu mets le liens general où se trouve tout tes fichiers texte
  lien2=paste(lien1,"/",x,sep ="")
  data=read.table(lien2,header=TRUE) #s'il y a entete alors header=TRUE sinon FALSE
  data
}

#maintenant tu appelles à chaque fois tes data

data1=import("txt1.txt") #"txt1.txt", "txt2.txt" est le nom de tes fichiers textes avec EXTENSION à l'appui
data2=import("txt2.txt")

Hors ligne

 

Pied de page des forums

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson

[ Generated in 0.014 seconds, 8 queries executed ]