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 :

Récupération de x pour un y donné - pour chaque groupe - taux de croissance


Sujet :

R

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Femme Profil pro
    Assistante de recherche
    Inscrit en
    Avril 2017
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Emirats Arabes

    Informations professionnelles :
    Activité : Assistante de recherche

    Informations forums :
    Inscription : Avril 2017
    Messages : 9
    Par défaut Récupération de x pour un y donné - pour chaque groupe - taux de croissance
    Bonjour,
    Je suis actuellement en train de développer un script me permettant de calculer des taux de croissance basés sur le poids pour chaque individu ainsi que de récupérer le taux de croissance maximal au cours du temps (également pour chaque individu) et l’âge auquel ce taux de croissance correspond.

    Un extrait de mes données :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    Individual	Age	Weight
    Ind1	1	52.84846
    Ind1	2	55.24094
    Ind1	3	58.69186
    Ind1	4	63.07099
    Ind1	5	68.2912
    Ind1	6	74.28564
    Ind1	7	80.99898
    Ind1	8	88.38326
    Ind1	9	96.39554
    …	…	…
    Ind2	1	52.24302
    Ind2	2	54.86406
    Ind2	3	58.74473
    Ind2	4	63.75136
    Ind2	5	69.78921
    Ind2	6	76.78161
    Ind2	7	84.66206
    Ind2	8	93.37037
    Ind2	9	102.8507
    …	…	…
    Le script que j’ai rédigé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    datatest <- read.table("Test16082017.txt", header = T)
     
    datatest[,4]<-NA
    datatest[,5]<-NA
    datatest[,6]<-NA
    names(datatest)[4:5:6]<-c("GrowthRate","MaxGC","AgeMaxGC")
     
    head(datatest)
     
    library(dplyr)
     
    datatest<-datatest %>% group_by(Individual) %>% mutate(GrowthRate=(lead(Weight)- Weight)/ Weight,MaxGC=max(GrowthRate,na.rm=TRUE),AgeMaxGC=datatest$Age[which(datatest$GrowthRate==max(datatest$GrowthRate,na.rm=TRUE))])
     
    head(datatest)
    J’obtiens alors :

    I
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    ndividual	Age	Weight	GrowthRate	MaxGC	AgeMaxGC
    Ind1	1	52.84846	0.045271	0.091165	6
    Ind1	2	55.24094	0.06247	0.091165	6
    Ind1	3	58.69186	0.074612	0.091165	6
    Ind1	4	63.07099	0.082767	0.091165	6
    Ind1	5	68.2912	0.087778	0.091165	6
    Ind1	6	74.28564	0.090372	0.091165	6
    Ind1	7	80.99898	0.091165	0.091165	6
    Ind1	8	88.38326	0.090654	0.091165	6
    Ind1	9	96.39554	0.089226	0.091165	6
    En vérifiant les calculs, le taux de croissance et le taux de croissance maximal sont bien calculés. Par contre, je me suis aperçue que l’âge qui devrait correspondre au taux de croissance maximal pour l’individu, correspond en réalité au taux de croissance maximal de tout le jeu de données. Je ne vois absolument pas où mon script pêche pour avoir l’âge par individu…

    Je vous remercie beaucoup pour l’aide que vous pourriez m’apporter.

    Aurélie

  2. #2
    Membre chevronné
    Inscrit en
    Février 2011
    Messages
    276
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 276
    Par défaut
    Bonjour,

    Remplace
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AgeMaxGC=datatest$Age[which(datatest$GrowthRate==max(datatest$GrowthRate,na.rm=TRUE))]
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AgeMaxGC = which.max(GrowthRate)
    Cordialement

  3. #3
    Membre habitué
    Femme Profil pro
    Assistante de recherche
    Inscrit en
    Avril 2017
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Emirats Arabes

    Informations professionnelles :
    Activité : Assistante de recherche

    Informations forums :
    Inscription : Avril 2017
    Messages : 9
    Par défaut
    Je te remercie énormément Tototode! Cela marche parfaitement. Dire que j'ai passé un temps fou à coder le bout que tu m'as fait sauter alors que la solution était toute simple
    Merci encore et bonne soirée!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Macro pour récupérer des données pour alimenter un fichier récapitulatif
    Par amateurvba dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 20/03/2013, 11h23
  2. Réponses: 6
    Dernier message: 08/03/2013, 10h37
  3. [AC-2007] Requête pour avoir le total de chaque groupe et la qté
    Par tibofo dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 09/07/2010, 15h24

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