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 :

Sélection variable data frame boucle selon plusieurs conditions


Sujet :

R

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2023
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Janvier 2023
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Sélection variable data frame boucle selon plusieurs conditions
    Bonjour,

    Je dispose de plusieurs data frames comprenant 20709 lignes et 25 colonnes. La première colonne correspond à la date et les 24 autres sont des données horaires de température. De ces data frames j'ai remplacé les valeurs supérieures à 2°C et inférieures à - 2 °C par des NA. Mon problème est que je veux sélectionner des évènements qui commencent par une température négative et qui se finit par une température positive comme dans l'exemple ci-dessous. (Les évènements sont considérés indépendants s'ils sont séparés d'au moins 3 heures)

    Nom : Capture d’écran 2023-01-20 173308.jpg
Affichages : 90
Taille : 35,0 Ko

    J'ai tenté avec une boucle while et break pour s'arrêter à partir de NA mais sans succès , également tenté avec une boucle for mais n'a pas fonctionné non plus.

    for (i in length(data$V1)){
    scenario1[i]<-ifelse(data[i]>0 & data[i+2]<0, return(data)," ")

    Voilà j'espère que vous pourrez m'aider Merci

  2. #2
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 053
    Points : 9 392
    Points
    9 392
    Par défaut
    Je ne connais pas du tout R, je ne vais pas du tout pouvoir aider. Mais je pense que si je ne ne comprends pas le besoin, alors un ordinateur ne peut pas le comprendre non plus.

    Tu veux les lignes où [I]data>0 & data[i+2]<0.

    En clair, tu veux les lignes où, à 2 heures d'intervalle, on passe d'une température positive à une température négative ?
    Ou bien, les lignes où, à 2 jours d'intervalle, on passe d'une température positive à une température négative ?

    Et si dans une journée, on a : 2 2 -1 -1 -1 4 4 4 4 -1 -1 -1 -1 -1 -1 5 5 5 -1 -2 -2 -2 -2 -2
    On a 3 fois dans la journée où on passe d'une température positive à une température négative. Tu veux récupérer une seule ligne, la ligne complète de la journée, ou bien 3 lignes, comme ci-dessous :
    2 -1 à 0h
    4 -1 à 8h
    5 -2 à 17h

    Et si la température est à 5° le mardi soir à 23heures, puis à -2° le mercredi matin à 1h, on a bien 2 heures d'écart entre les 2 mesures, on est passé d'une température positive à une température négative, et tu veux avoir une ligne pour ce changement de température, ou pas, parce que on a changé de journée entre le mardi soir 23h et le mercredi matin 01h ?
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2023
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Janvier 2023
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Merci de votre réponse! Vous m'avez répondu au même moment que j'ai modifié mon message

    Ce que je veux c'est créer un autre dataframe avec les évènements qui commencent par une température négative et qui se termine par une température positive. Par exemple si dans une journée on a :

    09/03 : NA NA -1.8 -1.5 -1.2 -0.0 0.5 NA NA NA 1.8 0.8 0.4 -0.7

    je veux garder uniquement le :
    09/03 : NA NA -1.8 -1.5 -1.2 -0.0 0.5 NA NA NA NA NA NA NA

  4. #4
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2023
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Janvier 2023
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    Cela fait quelques jours que je suis bloqué sur ce problème sans trouver de solutions
    Si quelqu'un a une piste à me fournir, ça serait avec plaisir.

Discussions similaires

  1. [XL-365] Sommer selon plusieurs conditions avec un mois variable
    Par Philippe1978AIX dans le forum Excel
    Réponses: 3
    Dernier message: 30/08/2022, 17h52
  2. [XL-2019] Boucle selon plusieurs conditions
    Par MPackers dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 02/10/2020, 15h21
  3. Aditionner une variable selon plusieurs conditions
    Par karec dans le forum SAS Base
    Réponses: 1
    Dernier message: 26/06/2018, 22h37
  4. Réponses: 1
    Dernier message: 22/02/2017, 13h45
  5. Réponses: 3
    Dernier message: 11/04/2008, 09h31

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