J'ai plusieurs jeux de données avec 75 000 observations et une type
variable qui peut prendre une valeur de 0 à 4. Je veux ajouter cinq nouvelles variables muettes pour chaque jeu de données pour tous les types. Le mieux que j'ai pu trouver pour faire ceci est comme suit:
# For the 'binom' data set create dummy variables for all types in all data sets
binom.dummy.list<-list()
for(i in 0:4){
binom.dummy.list[[i+1]]<-sapply(binom$type,function(t) ifelse(t==i,1,0))
}
# Add and merge data
binom.dummy.df<-as.data.frame(do.call("cbind",binom.dummy.list))
binom.dummy.df<-transform(binom.dummy.df,id=1:nrow(binom))
binom<-merge(binom,binom.dummy.df,by="id")
Bien que cela fonctionne, il est incroyablement lent (la fonction de fusion a même écrasé à quelques reprises). Est-il un moyen plus efficace de faire cela? Peut-être cette fonctionnalité fait partie d'un paquet que je ne suis pas familier avec?
Merci pour toute aide!