Bonjour à tous,

Je rencontre actuellement quelques problèmes avec la fonction get().

Je crée une liste de data.frame de mon evironnement avec la fonction ls :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
liste.EC <- ls(pattern = 'EC')
Ensuite je veux effectuer une boucle sur l'ensemble des data.frame donc je fais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
for (j in 1:length(liste.EC)) {
  aux <- get(liste.EC[i])
  aux <- aux[aux$Date < as.Date("2014-05-21"),]
  assign(j, aux)
}
Or j'ai le message d'erreur suivant :
Error in aux$Date : $ operator is invalid for atomic vectors

Et quand je regarde ce que contient aux après la premier itération, il contient l'objet liste.EC et non pas le data.frame qu'il devrait avoir.

Plus étrange encore, lorsque je fais le code à l'extérieur d'une boucle for, je remplace les i par 1, ça marche...

J'ai aussi effectué une boucle for pour des plots qui marche :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
liste.EC <- ls(pattern = 'EC')
 
for (i in 1:length(liste.EC)) {
  plot(get(liste.EC[i]), main = liste.EC[i], type = 'h')
}
Merci de votre aide !