2016-01-05 50 views
3

我想删除数据框中的一些列。 我想知道为什么它适用于单列,但不适用于多列色谱柱 这个工程如何删除r数据框中的多列?

album2[,5]<- NULL 

这不起作用

album2[,c(5:7)]<- NULL 
Error in `[<-.data.frame`(`*tmp*`, , 5:7, value = NULL) : 
replacement has 0 items, need 600 

这也不起作用

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 
+6

尝试'album2 [5 :7] < - list(NULL)' –

+0

这将是gre如果你能提供一个最小的可重复的例子来解决你的问题。我们可以从中学习并使用它来向您展示如何回答您的问题。这样,其他人也可以在将来形成你的问题和相应的答案。你可以看看[这个SO帖子](https://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)关于如何在R中创建一个很好的重现例子。 –

+0

它的工作感谢 –

回答

13

基本子集:

album2 <- album2[, -5] #delete column 5 
album2 <- album2[, -c(5:7)] # delete columns 5 through 7 
相关问题