Requête Access

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

Aurélien Madouasse
Messages : 352
Enregistré le : 26 Fév 2007, 11:23

Requête Access

Messagepar Aurélien Madouasse » 08 Mai 2007, 16:52

Bonjour,

J'ai une base de donnée assez importante et afin de l'explorer un peu j'aimerais pouvoir programmer des requêtes depuis R. Par exemple, j'aimerais pouvoir extraire des données mois par mois. Pour ça j'utilise le package RODBC que je voudrais combiner avec une boucle si possible.

Par exemple, la requête suivante fonctionne:

Code : Tout sélectionner

rec<-sqlQuery(recordings, "SELECT recordings.month, recordings.cell_count FROM recordings WHERE (((recordings.month)=1))")


Et j'aimerais avoir quelque chose du genre:

Code : Tout sélectionner

for (i in 1:36){

rec<-sqlQuery(recordings, "SELECT recordings.month, recordings.cell_count FROM recordings WHERE (((recordings.month)=i))")

hist(rec$cell_count)

savePlot(file="cc_i.jpg",...)

}


En fait les guillemets me posent problème. J'ai essayé avec eval et parse mais je ne m'en sort pas!

Renaud Lancelot
Messages : 2484
Enregistré le : 16 Déc 2004, 08:01
Contact :

Messagepar Renaud Lancelot » 08 Mai 2007, 19:30

Code : Tout sélectionner

for (i in 1:36){
  req <- paste("SELECT recordings.month, recordings.cell_count FROM recordings WHERE recordings.month =", i)
  rec <- sqlQuery(recordings,  req)
  hist(rec$cell_count)
  nam <- paste("cc_", i, ".jpg", sep = "")
  savePlot(file = nam, ...)
  }


Mais je ferais plutôt:

Code : Tout sélectionner

for (i in 1:36){
  req <- paste("SELECT recordings.month, recordings.cell_count FROM recordings WHERE recordings.month =", i)
  rec <- sqlQuery(recordings,  req)
  nam <- paste("cc_", i, ".jpg", sep = "")
  jpeg(filename = nam)
  hist(rec$cell_count)
  dev.off()
  }


Renaud

Aurélien Madouasse
Messages : 352
Enregistré le : 26 Fév 2007, 11:23

Messagepar Aurélien Madouasse » 08 Mai 2007, 19:42

Formidable!

Merci beaucoup

Aurélien


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Google [Bot] et 1 invité