r - 删除元素后,数据框不再是数据框

标签 r dataframe

这个问题在这里已经有了答案:





Data.frame becomes factor/vector after filtering/subsetting

(1 个回答)


6年前关闭。




我有一个简单的数据框

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,])

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

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

我的目标是只删除数据框中出现的前 n 个 NA。如果它们发生在中间的某个地方,那没关系。

谢谢!

最佳答案

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

myframe[-1, , drop = FALSE]

关于r - 删除元素后,数据框不再是数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30088933/

相关文章:

python - 用 `and` 条件替换 pandas 列中的部分字符串

python - 创建一个包含多行条件的列

r - 在 r 中按时间分组的累积计数

r - 为什么不能计算表达式中的这个 R 调用对象? (子集与从调用对象中提取)

r - 如何检查R中函数的所有参数

python - 使用滚动标准差检测 Pandas 数据框中的异常值

python - 从对象列表构建数据帧花费的时间太长

python-3.x - 将 NaN 文本列分离到其他数据框中

regex - 从字符串和文本数据中提取年份

r - 库(dplyr): there is no package called ‘dplyr’ 中的错误