Tu né pa du tout a coté de la plaque, c exactement ca!
Cool :)
je pense qu’il faut décomposer ton problème (dsl de me répéter).
voici une proposition:
1- Tu crées un fichier avec TOUS tes types de sol. Tu dois certainement avoir une table dans ta base de données avec la description de tes codes de type de sol (on l’appellera le fichier code).
Code TypeDeSol GrandTypeDeSOL
111 pelouse veg
121 sable terre
…
sinon tu peux le construire.
Code : Tout sélectionner
# importe le fichier code
code <-read.table(« code.txt »,h=T)
row.names(code) <- code$Code
2- tu importes tes données en fichier .txt
Code : Tout sélectionner
tab1 <- read.table(« TonFichierTexte.txt »,h=T)
# tu vas obtenir les noms de colonnes suivant :
X111 X121
# R rajoute un X , mais c’est pas grave, on va l’enlever.
names(tab1) <- substring(names(tab1),2,4)
# ensuite on construit le tableau de code qui correspond à tab1
# on extrait que les lignes qui correspondent aux colonnes de tab1
code1 <- code[names(tab1),]
# à partir de là, il n’y a plus de pb.
# Ton facteur GrandTypeDeSOL est donnée par :
code1$GrandTypeDeSOL
# et tu reprends le code proposé dans le précédent post
Cela suppose ke tu connaisse déjà le nombre de matrice é le nom des type de sol à l'avance or ce ne sera pa le ka vu que lé fichier '.txt' ne seron jamé lé mem...
Oui, mais c’est pas très compliqué de reconstruire un facteur pour chaque matrice cf au-dessus
Mé je ne vois pa komen faire pr automatiser cette tache!!
Il faut peut-être pas …
En fait il fodré faire une boucle pour construire les matrices é les sauver une par une -> l'utilisateur oré juste besoin de rentrer le nombre de matrices nécessaires é le noms de chacunes pour puisser les info correspondantes dans ce ki a été fé avant....
Ça, c’est pas trop compliqué.
Code : Tout sélectionner
# Tu crées une liste
listmat <- list()
# ensuite tu peux construire ta boucle
for( i in …){
….
listmat [[i]] <- ….TonCalcul
….
names(listmat)[i] <- paste(“nom”,i,sep=””)
}
# puis tu peux appeler les différentes matrices
listmat$nom1
listmat$nom2
En espérant t’aider dans ta lourde tâche.
@+
pierre