tester une formule

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

Julien Demeaux
Messages : 49
Enregistré le : 23 Oct 2017, 22:24

tester une formule

Messagepar Julien Demeaux » 11 Nov 2017, 19:05

Y a t'il dans R une fonction qui permet de tester une formule ?
J'ai une formule assez longue avec des ifelse, exp et sur certaines lignes ça me retourne un NA alors que ça devraot me donner un résultat chiffré.
J'avais développé la formule équivalente sur excel (oui oui je suis un newbie sur R) et ça fonctionne...
Merci

Gabriel Terraz
Messages : 591
Enregistré le : 26 Sep 2011, 15:11

Re: tester une formule

Messagepar Gabriel Terraz » 12 Nov 2017, 11:52

Salut,
Pour que l'on puisse t'aider, il faudrait que tu nous donnes :
Un extrait de tes données, suffisant pour reproduire le problème que tu rencontres lors de l'utilisation de ta commande (qui est donc la deuxième chose qu'il faut fournir).

Bonne journée

Julien Demeaux
Messages : 49
Enregistré le : 23 Oct 2017, 22:24

Re: tester une formule

Messagepar Julien Demeaux » 12 Nov 2017, 18:13

J'ai trouvé le problème entre temps mais je n'arrive pas à le corriger.

Voici ma formule simplifiée

Code : Tout sélectionner

df$Odds<-ifelse(df$primaryType =="Cross High" | df$primaryType == "Cross Low", 0.52*exp(-0.95*df$SpDist),
         0.57*exp(-0.65*df$SpDist)


La variable primaryType peut être vide (NA) et ça me renvoit à chaque fois un NA dans ces cas de figure alors que je voudrais que ça me renvoit le résultat de 0.57*exp(-0.65*df$SpDist).

Voici un exemple simplifié de mon dataframe (j'ai 38 variables)

Code : Tout sélectionner

primaryType   SpDist
NA            28.6609
Cross Low      12.6589
Cross High   51.2345
NA            35.2412

Gabriel Terraz
Messages : 591
Enregistré le : 26 Sep 2011, 15:11

Re: tester une formule

Messagepar Gabriel Terraz » 13 Nov 2017, 07:25

Salut,
Sous réserve d'avoir compris, tu veux utiliser la deuxième formule si tu as un NA dans la première colonne et la première pour les deux autres cas. Dans ce cas là :

Code : Tout sélectionner

df$Odds<-ifelse(is.na(df$primaryType),  0.57*exp(-0.65*df$SpDist), 0.52*exp(-0.95*df$SpDist))

Julien Demeaux
Messages : 49
Enregistré le : 23 Oct 2017, 22:24

Re: tester une formule

Messagepar Julien Demeaux » 14 Nov 2017, 03:11

Super, Merci Gabriel, ça fonctionne !


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Gabriel Terraz et 1 invité