一旦元素被移除,数据帧就不再是数据帧

时间:2015-05-06 22:40:25

标签: r dataframe

我有一个简单的数据框

myframe<-data.frame(c(NA, NA,NA, 1,2,3,4,5,NA,7,8,9))

我删除了第一个元素:

myframe<-myframe[-1,]

当我这样做时:

is.data.frame(myframe)

我得到的结果是:

[1] FALSE

我可以通过以下方式修复它:

myframe<-data.frame(myframe[-1,])

但我认为数据框在删除元素后不会停止成为数据框

这里发生了什么?我整天都在编码,我的大脑都被炒了,我无法弄清楚这一点。请帮忙。

我的目标是仅删除数据帧中NAs的前n次出现。如果它们出现在中间的某个地方,那没关系。

谢谢!

1 个答案:

答案 0 :(得分:9)

因为您只有一列,所以R会自动将结果转换为矢量。如果要保留数据框结构,可以键入

myframe[-1, , drop = FALSE]