Traitement de données

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

Issaka Abakar Koumato
Messages : 15
Enregistré le : 24 Sep 2018, 22:00

Traitement de données

Messagepar Issaka Abakar Koumato » 10 Déc 2018, 21:44

Bonsoir je viens demander une orientation à propos de mon projet pour la fin d'année pour l'obtention d'une licence professionnelle. J'ai 23 types de ce données:
SoDa_MERRA2_lat8.567_lon16.083_Top_Occidant_Mou-Excel
SoDa_MERRA2_lat8.663_lon7.67_Trou_Traitant_Roun-Excel
SoDa_MERRA2_lat12.34_lon21.75_Mome_Bourde_Bou-Excel
.
.
.
Que je veux écrire un programme qui me permettra de récupérer les 23 villes,lat et le lon sous forme matricielle,de cette forme : ville lat long
Mou 8.567 16.083
Roun 8.663 7.67
Bou 12.34 21.75
Jusqu'à 23.

Pierre-Yves Berrard
Messages : 1029
Enregistré le : 12 Jan 2016, 23:30

Re: Traitement de données

Messagepar Pierre-Yves Berrard » 10 Déc 2018, 22:11

Bonjour,

Une expression régulière et quelques parenthèses capturantes devraient faire l'affaire :

Code : Tout sélectionner

motif <- "lat([0-9]+\\.[0-9]+)_lon([0-9]+\\.[0-9]+).+_(.+)-Excel"

Si les données sont sous forme de vecteur :

Code : Tout sélectionner

donnees <- c(
  "SoDa_MERRA2_lat8.567_lon16.083_Top_Occidant_Mou-Excel",
  "SoDa_MERRA2_lat8.663_lon7.67_Trou_Traitant_Roun-Excel",
  "SoDa_MERRA2_lat12.34_lon21.75_Mome_Bourde_Bou-Excel"
)

Code : Tout sélectionner

library(stringr)
str_match(donnees, motif)

Si les données sont dans un data.frame :

Code : Tout sélectionner

donnees_df <- data.frame(donnees)
library(tidyr)
extract(
  donnees_df,
  col = donnees,
  into = c("lat", "lon", "ville"),
  regex = motif,
  convert = TRUE
)
PY

Issaka Abakar Koumato
Messages : 15
Enregistré le : 24 Sep 2018, 22:00

Re: Traitement de données

Messagepar Issaka Abakar Koumato » 13 Déc 2018, 21:57

Bonsoir s'il vous plaît je viens d'essayer mais je n'arrive pas à trouver la réponse que je veux. Rien n'affiche.

Pierre-Yves Berrard
Messages : 1029
Enregistré le : 12 Jan 2016, 23:30

Re: Traitement de données

Messagepar Pierre-Yves Berrard » 14 Déc 2018, 09:55

Quelles commandes avez-vous exécuté ?
PY

Issaka Abakar Koumato
Messages : 15
Enregistré le : 24 Sep 2018, 22:00

Re: Traitement de données

Messagepar Issaka Abakar Koumato » 16 Déc 2018, 21:23

Bonsoir j'ai essayé les codes mais je n'arrive pas à mettre les données la dans une matrice. Je peux avoir une autre solution ?

Pierre-Yves Berrard
Messages : 1029
Enregistré le : 12 Jan 2016, 23:30

Re: Traitement de données

Messagepar Pierre-Yves Berrard » 17 Déc 2018, 10:16

Issaka Abakar Koumato a écrit :Je peux avoir une autre solution ?

Quelqu'un prend le temps de se pencher sur votre problème. Ayez au moins la politesse de répondre aux demandes de précisions avant de rejeter en bloc une solution qui devrait fonctionner (avec quelques ajustements liés à la façon dont se présentent vos données).
PY

Issaka Abakar Koumato
Messages : 15
Enregistré le : 24 Sep 2018, 22:00

Re: Traitement de données

Messagepar Issaka Abakar Koumato » 17 Déc 2018, 18:01

Je m'excuse vraiment si mes écrits vous on mi mal.

Issaka Abakar Koumato
Messages : 15
Enregistré le : 24 Sep 2018, 22:00

Re: Traitement de données

Messagepar Issaka Abakar Koumato » 24 Déc 2018, 23:21

Bonsoir s'il vous plaît j'ai fait exactement ce que vous avez décrit. Si je mets tout les 23noms des différentes variables dans une variable données comme celle là :donnees <- c( "SoDa_MERRA2_lat8.567_lon16.083_Top_Occidant_Mou-Excel", "SoDa_MERRA2_lat8.663_lon7.67_Trou_Traitant_Roun-Excel", "SoDa_MERRA2_lat12.34_lon21.75_Mome_Bourde_Bou-Excel"
) au lieu qu'il fait ce que vous avez dit afin que je trouve une matrice que j'avais dit, je n'arrive pas est-ce que ta pas une autre solution ?

Issaka Abakar Koumato
Messages : 15
Enregistré le : 24 Sep 2018, 22:00

Re: Traitement de données

Messagepar Issaka Abakar Koumato » 07 Jan 2019, 09:22

motif <- "lat([0-9]+\\.[0-9]+)_lon([0-9]+\\.[0-9]+).+_(.+)-Excel"
donnees <-c( "SoDa_MERRA2_lat8.567_lon16.083_Top_Occidant_Mou-Excel", "SoDa_MERRA2_lat8.663_lon7.67_Trou_Traitant_Roun-Excel", "SoDa_MERRA2_lat12.34_lon21.75_Mome_Bourde_Bou-Excel"
)
library(stringr)
str_match(donnees, motif)
donnees_df <- data.frame(donnees)
library(tidyr)
extract(
donnees_df,
col = donnees,
into = c("lat", "lon", "ville"),
regex = motif,
convert = TRUE
)
[code][/code]

Issaka Abakar Koumato
Messages : 15
Enregistré le : 24 Sep 2018, 22:00

Re: Traitement de données

Messagepar Issaka Abakar Koumato » 07 Jan 2019, 09:37

motif <- "lat([0-9]+\\.[0-9]+)_lon([0-9]+\\.[0-9]+).+_(.+)-Excel"
donnees <-c( "SoDa_MERRA2_lat8.567_lon16.083_Top_Occidant_Mou-Excel", "SoDa_MERRA2_lat8.663_lon7.67_Trou_Traitant_Roun-Excel", "SoDa_MERRA2_lat12.34_lon21.75_Mome_Bourde_Bou-Excel"
)
library(stringr)
str_match(donnees, motif)
donnees_df <- data.frame(donnees)
library(tidyr)
extract(
donnees_df,
col = donnees,
into = c("lat", "lon", "ville"),
regex = motif,
convert = TRUE
)
Bonjour Monsieur Pierre-Yves Berrard je tiens à m'excuser encore de plus j'ai essayé ces commandes et si je prends huit(8) variables"SoDa_MERRA2_lat12.34_lon21.75_Mome_Bourde_Bou-Excel" je trouve une matrice mais moi j'ai 23 variables comme celle précédente et je veux récupérer les valeurs de longitude, attitude et la ville mais R ne prend pas les 23 variables c'est pourquoi je me suis mis directement à répondre. Je m'excuse vraiment. Vos aides et orientations vont vraiment m'aider.

Pierre-Yves Berrard
Messages : 1029
Enregistré le : 12 Jan 2016, 23:30

Re: Traitement de données

Messagepar Pierre-Yves Berrard » 07 Jan 2019, 09:43

Bonjour,

Je ne vois pas comment se présentent vos données. Pourriez-vous être plus précis sur ce point ?
Par exemple en copiant ici, le résultat de str(_donnees_) [remplacer _donnees_ par le nom de l'objet R]
PY

Mickael Canouil
Messages : 1315
Enregistré le : 04 Avr 2011, 08:53
Contact :

Re: Traitement de données

Messagepar Mickael Canouil » 07 Jan 2019, 12:38

Bonjour,

Pour rebondir sur la remarque de Pierre-yves:
Qu'est-ce qu'un code reproductible ?
Comment insérer des données dans un message

Et pourriez-vous utiliser les balises de code du forum, ce sera beaucoup plus facile à lire.
Image

Cordialement,
Mickaël
mickael.canouil.fr | rlille.fr


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité