Modérateur : Groupe des modérateurs
Code : Tout sélectionner
library(dplyr)
library(tidyr)
donnees %>%
group_by(Order.ID) %>%
mutate(
User.id = if (all(is.na(User.id))) -1 else User.id # -1 car User.id est numérique...
) %>%
arrange(Order.ID, is.na(User.id)) %>%
fill(User.id)
Code : Tout sélectionner
donnees2 <- donnees %>% ...
Code : Tout sélectionner
donnees %<>%
group_by(Order.ID) %>%
mutate(
User.id = if (all(is.na(User.id))) -1 else User.id # -1 car User.id est numérique...
) %>%
arrange(Order.ID, is.na(User.id)) %>%
fill(User.id)
Logez Maxime a écrit :Pour éviter ce genre de choses tu peux utiliser l'opérateur "%<>%".
J'en suis pas fan parce que je trouve que ça manque de lisibilité dans un code, je préfère la combinaison des opérateurs "<-" et "%>%".
Code : Tout sélectionner
idx<-which(!is.na(df$User.id))
df2<-df[idx, ]
apply(df2, 1,
function(x)
{
tmp<-which(df[1]==as.numeric(x[1]))
df[rownames(df)[tmp],2]<<-x[2]
}
)
Code : Tout sélectionner
apply(df[which(!is.na(df$User.id)), ], 1,
function(x)
{
tmp<-which(df[1]==as.numeric(x[1]))
df[rownames(df)[tmp],2]<<-x[2]
}
)
Retourner vers « Questions en cours »
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité