J'ai une image de données comme celle-ci Je veux supprimer toutes les colonnes de la même valeur, c'est-à-dire k, donc mon résultat sera comme celui-ci P> 1 1 1 1
2 1 2 1
3 8 3 1
4 8 2 1
1 1 1 1
2 1 2 1
4 Réponses :
Pour sélectionner des colonnes avec plus d'une valeur, quel que soit le type: ? p> (OOPS, la question de Roman a raison - cela pourrait assommer votre colonne 5 De plus) P> Peut-être ( édition forte>: merci à des commentaires!) p> ou p>
Votre sous-ensemble ne fonctionne pas pour moi. Peut-être d [! isfac | Longueur unique! = 1] code>?
... Je "rappelez-vous" (? Sous-ensemble code>) maintenant,
sous-ensemble code> fonctionne sur lignes i>. Pour contourner cela, on devrait spécifier
sélectionner code> explicitement, donc
sous-ensemble (D, SELECT =! ISFAC | Longueur de vue> 1) code>. @ user976991, essayez ça.
Une autre façon de le faire consiste à utiliser la fonction d'ordre supérieur filtre code>. Voici le code
to_keep <- function(x) any(is.numeric(x), length(unique(x)) > 1)
Filter(to_keep, d)
Voici une solution qui fonctionnera pour supprimer
solution onLiner.
df2 <- df[sapply(df, function(x) !is.factor(x) | length(unique(x))>1 )]
Si la solution est-elle compte pour les caractères numériques et les facteurs?