Je découvre des choses que je n'avais jamais essayé! Mais vous dites qu'il ne faut pas le faire, alors merci :) [ ma_variable <- "revenu" df[[ma_variable]] #> [1] 1 2 3 df$ma_variable #> NULL Je trouve cela "marrant" que ça ne fonctionne pas dans les 2 sens, que passer par $ ou [...
Oui c'est (quasiment) équivalent. $ permet de ne mettre que le début du nom de la variable (déconseillé) [[ peut servir dans ce contexte : ma_variable <- "code_atc.z" .data[[ma_variable]] # .data$ma_variable ne fonctionne pas Je ne suis pas sure d'avoir saisi le sens de votre explication,...
.data[["code_atc.z"]] <- ifelse( test = is.na(.data[["code_atc.x"]]), yes = .data[["code_atc.y"]], no = .data[["code_atc.x"]] ) Petite question, est ce que les doubles crochets correspondent à $ ou c'est différent? Sous entendu data$code_atc.x serait la même ...
Bonjour à tous, Je rencontre un petit problème car je suis clairement réfractaire à l'utilisation de boucles dans R (due à mon manque de compétence^^) Je souhaiterai remplir une nouvelle colonne en fonction de la présence de 2 autres, voici mon df : cip7 code_atc.x code_atc.y 1 2160050 R03DC03 R03DC...
summarise attend une unique valeur par groupe. Or, pour un groupe comportant n lignes, difftime(date, d_sortie, units = "weeks") renverra un vecteur de taille n : les durées entre date et d_sortie calculées terme à terme. S'inspirer de la ligne du dessus (nb_jour = ...) ? Je ne peux donc ...
Bonjour, je rencontre un autre problème, sans trouver la solution, voici donc mon code : df2 <- df1 %>% group_by(patient, libelle_produit) %>% summarise( nb_occurences = n(), periode = paste(last(date), first(date), sep = "//"), nb_jour = difftime (first(date),last(date)), anter_ttt = diff...
Lu un peu vite. Ceci s'approche plus du résultat souhaité : df %>% group_by(patient, med) %>% summarise( nb_occurences = n(), periode = paste(last(date), first(date), sep = "-") ) Merci pour votre repost, comme toujours cela correspond parfaitement à ma recherche! Grâce à votre formule j'...
Bonjour à tous, J'aurais besoin d'un petit coup de pouce car je suis totalement bloquée, voici mon df : df<-data.frame(patient=c(1,1,1,1,2,2), med=c("med1", "med1", "med1", "med2", "med3", "med4"), date=c("d1", "d2", &qu...
df$ben_aaa_ano <- factor(df$ben_aaa_ano, levels = unique(df$ben_aaa_ano)) split(df, df$ben_aaa_ano) (pas d'espace entre le nom de la fonction et la parenthèse ouvrante qui suit) ou split(df, droplevels(df$ben_aaa_ano)) Les 2 fonctionnent à merveille! Je ne comprends pas suffisament la doc de "...
Bonjour, Ceci est l'un des problèmes d'utiliser la conversion par défaut des chaînes de caractères en facteurs. Je recommande de commencer vos scripts par: options(stringsAsFactors = FALSE) Effectivement cela permet de supprimer les facteurs de base, sauf que pour split, j'ai besoin de facteurs, et...
J'ai trouvé la réponse : mon df était une extraction d'un autre df, et tous les levels de cette colonne avait été conservés, il suffit de faire un droplevels poru le remettre à jour.
Bonjour, liste_df <- split(df, df$ID) J'avais retenu cette réponse pour faire pareil sur mon df, mais je rencontre une erreur que je ne comprends pas.. Voici mon df ben_aaa_ano exe_soi_amd pha_prs_c13 pha_prs_ide 79 UXBJ7000PUB0GHPDD 2015-01-06 3400935567260 3556726 390 DGAWXBU5TP4999MKD 2015-01-19...
Merci pour votre temps et votre réponse, en lisant votre remarque à mon collègue, j'ai compris que vous parliez de l'intitulé des colonnes. Vos exemples sont très clairs, mais en remplaçant avec mes arguments cela ne fonctionne pas. J'ai pourtant suivi votre exemple à la lettre. Je sais que la fonct...
Bonjour, Excusez moi pour mon manque de précision, le df1 = CIP et le df2 = MCO_D. Je n'ai affiché que les 5 premières lignes de mes 2 df car ils contiennent chacun plus de 20.000 lignes. Je ne peux pas utiliser merge car mes scripts sont relus, et la fonction merge ne peut pas être vérifiée et semb...