Donc cela donne la liste entière avec ce que je avais besoin:Obtenir la fréquence maximale que pour chaque facteur
max <- function(x) {
n <- data.frame(x)
factored <- n[sapply(n, is.factor)]
dt_res = data.frame()
for (i in 1:ncol(factored)) {
dt_temp = data.frame(t(table(factored[, i])))
dt_temp$Var1 = names(factored)[i]
dt_res = rbind(dt_res, dt_temp)
}
names(dt_res) = c("Factors", "Categories", "Frequency")
return(dt_res)
}
Comment puis-je obtenir la fréquence maximale pour chaque facteurs? Avec l'ensemble de diamant, je reçois
Factors Categories Frequency
cut Fair 1610
cut Good 4906
cut Very Good 12082
cut Premium 13791
cut Ideal 21551
color D 6775
color E 9797
color F 9542
color G 11292
color H 8304
color I 5422
color J 2808
Et la catégorie pour plus de clarté, mais je veux retourner ce:
Factors Categories Frequency
cut Ideal 21551
color G 11292
clarity SI1 13065
Merci
Je comptais l'utiliser dans ma fonction, il ne fonctionnera pas pour d'autres colonnes qui ne sont pas coupés, la couleur et la clarté. J'ai essayé dt_temp = data.frame (max (t (table (factorisé [, i])))) seulement pour obtenir les facteurs et la fréquence, pas la catégorie. –
Je voudrais éviter les boucles autant que possible. Vous pouvez choisir d'autres colonnes si vous le souhaitez. Voir ma réponse éditée. – CPak