IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

R Discussion :

Identification des lignes manquantes dans jeu de données


Sujet :

R

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2012
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 69
    Points : 38
    Points
    38
    Par défaut Identification des lignes manquantes dans jeu de données
    Bonjour,

    Je dispose d'un jeu de données (voir en pièce jointe) avec une valeur de température toutes les heures. Cependant, ces données comportent des "trous". C'est-à-dire qu'il arrive que l'on passe directement de 17h a 19h, la données de température qui devrait figurer à 18h étant manquante.

    Je souhaiterais donc pouvoir repérer ces lignes manquantes sur la base d'un test du type :
    Si l'heure à l'instant t n'est pas égale à l'heure à l'instant (t-1) + 100 (l'heure est en effet exprimée de la manière suivante 1700, 1800, 1900, etc.. pour 17h, 18h, 19h), alors il manque une ligne de données.
    A ce moment là, je souhaiterais créer une colonne supplémentaire dans mes données à remplir avec des TRUE/FALSE selon le résultat du test.
    J'envisageais d'utiliser ce type de formule (avec "a" mon jeu de données et a$HrMn la colonne comportant l'heure à laquelle chaque donnée a été capturée:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    a$MISS=ifelse(a$HrMn[i]=a$HrMn[i-1]+100, FALSE, TRUE)
    ça ne marche pas...
    J'ai également essayé cela:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    a$y[a$HrMn[i]==a$HrMn[i-1]+100]=TRUE
    a$y[a$HrMn[i]!=a$HrMn[i-1]+100]=FALSE
    Dans ce cas, je n'obtiens que des TRUE...

    Cependant, un problème se pose. Toutes les 24 lignes, la valeur de la colonne HrMn (autrement dit, l'heure) retombe à 0 (une nouvelle journée commence).
    Auriez-vous une idée concernant ce problème et la manière de formuler la ligne de script ci-dessus, cela ne marche pas pour l'instant.

    Merci!
    Fichiers attachés Fichiers attachés

  2. #2
    Membre confirmé
    Homme Profil pro
    MCU
    Inscrit en
    Juillet 2010
    Messages
    185
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : MCU
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2010
    Messages : 185
    Points : 486
    Points
    486
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    reperage <- read.table("ReperageLignesManquantes.txt", header=TRUE, sep="\t", stringsAsFactors=FALSE)
    temp <- expand.grid(unique(reperage$Date), seq(0, 2300, 100))
    names(temp) <- c("Date", "HrMn")
    resultat <-merge(temp, reperage, all.x=TRUE)
    resultat[which(is.na(resultat$Temp)), ]
    HTH

    Vincent

Discussions similaires

  1. Réponses: 11
    Dernier message: 10/11/2010, 08h33
  2. Réponses: 3
    Dernier message: 28/09/2008, 15h41
  3. Supprimer des lignes vides dans un label
    Par benjhe dans le forum VB.NET
    Réponses: 3
    Dernier message: 19/12/2007, 08h57
  4. Réponses: 4
    Dernier message: 26/07/2007, 11h35
  5. compter des lignes \n dans un texrarea
    Par gforce dans le forum Général JavaScript
    Réponses: 56
    Dernier message: 19/01/2007, 15h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo