J'ai un DF avec des données de niveau pays inscrites en 2003.
Plusieurs rangées de données appartiennent à un pays nommé «République fédérale de Yougoslavie». P>
Ce sont deux pays distincts aujourd'hui et je veux dupliquer ces lignes de données afin que je puisse renommer chaque ensemble de lignes à son nom de pays moderne respectif. P>
data.frame(Country = c("Serbia", "Montenegro"), Chickens = 567)
3 Réponses :
Vous pouvez faire quelque chose comme ceci:
data2<-data[data$country=="Yugoslavia"] levels(data2$country)[levels(data2$country)=="Yugoslavia"]<-"Serbia" levels(data$country)[levels(data$country)=="Yugoslavia"]<-"Montenegro" rbind(data,data2)
Vous pouvez faire dans un Vous pouvez également utiliser Tidyverse code> tuyau:
mutate_if code> au lieu du
if_else Code> Déclarations. P>
%>% mutate(Country = as.factor(Country))
Vous pouvez écrire une fonction qui renvoie les lignes dupliquées et renommées comme: ou si la commande n'a pas d'importance: p> Données: P> x <- data.frame(Country = c("Italy","Yugoslavia","Austria"), Chickens = c(2,567,3))
x
# Country Chickens
#1 Italy 2
#2 Yugoslavia 567
#3 Austria 3
Salut et bienvenue à tellement! Pouvez-vous fournir un exemple reproductible de votre jeu de données?