comment faire pour supprimer plusieurs colonnes dans la r dataframe?
Je suis en train de supprimer certaines colonnes dans un dataframe.
Je veux savoir pourquoi il a travaillé pour une seule colonne, mais pas avec multible colonnes
par exemple
cela fonctionne
album2[,5]<- NULL
cela ne fonctionne pas
album2[,c(5:7)]<- NULL
Error in `[<-.data.frame`(`*tmp*`, , 5:7, value = NULL) :
replacement has 0 items, need 600
Cela ne fonctionnera pas non plus
for (i in 5: (length(album2)-1)){
album2[,i]<- NULL
}
Error in `[<-.data.frame`(`*tmp*`, , i, value = NULL) :
new columns would leave holes after existing columns
Essayez
Il serait génial si vous pouviez fournir un minimum reproductible exemple pour aller avec votre question. Quelque chose que nous pouvons travailler à partir de et utiliser pour vous montrer comment il pourrait être possible de répondre à votre question. De cette façon, d'autres peuvent également conviennent à la forme de votre question, et l'accompagnement de répondre, à l'avenir. Vous pouvez avoir un coup d'oeil à ce DONC post sur comment faire une grande reproductible exemple dans R.
cela a fonctionné merci
d'autant que, autant que je peux dire, le premier exemple de "ce qui fonctionne" ne fonctionne pas réellement.
à l'aide de la liste des "(NULL)" de le faire fonctionner avec plusieurs colonnes , utiliser la valeur NULL à une seule colonne travaillé.je vais prendre soin de reproductibilité dans l'avenir .
album2[,5:7]<- list(NULL)
Il serait génial si vous pouviez fournir un minimum reproductible exemple pour aller avec votre question. Quelque chose que nous pouvons travailler à partir de et utiliser pour vous montrer comment il pourrait être possible de répondre à votre question. De cette façon, d'autres peuvent également conviennent à la forme de votre question, et l'accompagnement de répondre, à l'avenir. Vous pouvez avoir un coup d'oeil à ce DONC post sur comment faire une grande reproductible exemple dans R.
cela a fonctionné merci
d'autant que, autant que je peux dire, le premier exemple de "ce qui fonctionne" ne fonctionne pas réellement.
à l'aide de la liste des "(NULL)" de le faire fonctionner avec plusieurs colonnes , utiliser la valeur NULL à une seule colonne travaillé.je vais prendre soin de reproductibilité dans l'avenir .
OriginalL'auteur Ahmed Elmahy | 2016-01-05
Vous devez vous connecter pour publier un commentaire.
De base.:
Oui, et non. L'OP a été posée dans le contexte de la spécification de colonne positions. Si vous connaissez les positions souhaitées, puis c'est très bien. Pour les autres, pour savoir si votre commentaire est utile/pertinent pour eux, pourriez-vous ajouter pourquoi vous ne le recommanderais pas?
eh bien, que si l'on ajoute une nouvelle colonne à ses données puis colonne changé de position? Je suis d'accord que votre réponse est correcte, mais ce n'est ni sûr ni efficace.
Il est implicite que vous êtes sur le point de savoir quels sont les numéros de colonne que vous voulez. Arriver à ce point est à vous. À considérer si vous êtes à le faire de manière interactive ou par programmation (et donc de quelles conditions vous avez besoin pour faire face à) est aussi à vous.
OriginalL'auteur doctorG
L'ajout de répondre que c'était le meilleur résultat lors de la recherche pour "chute de plusieurs colonnes dans la r":
La version générale de la seule colonne de suppression, de l'e.g
df$column1 <- NULL
, est d'utiliserlist(NULL)
:df[ ,c('column1', 'column2')] <- list(NULL)
Cela fonctionne aussi pour les index de position ainsi:
df[ ,c(1,2)] <- list(NULL)
C'est une baisse générale et comme certains commentaires l'ont mentionné, l'enlèvement des indices n'est pas recommandé. Plus le familier négatif sous-ensemble (utilisé dans d'autres réponses) ne fonctionne pas pour les colonnes étant donné que des chaînes:
OriginalL'auteur Andrew Haynes
Si vous voulez seulement de supprimer les colonnes 5 et 7, mais pas les 6 à essayer:
OriginalL'auteur Kara
@Ahmed Elmahy approche suivante devrait vous aider, si vous avez fait un vecteur des noms de colonnes que vous souhaitez supprimer de votre dataframe:
Tout le meilleur, ExploreR
OriginalL'auteur ExploreR