R 语言 | 取数据框一列子集时,如何保持数据框结构?drop=F

数据框取多列时,返回的还是数据框。

取一列时,默认退化为一个向量:

复制代码
> class(iris)
[1] "data.frame"
> t1=iris[, 1:2]
> class(t1)
[1] "data.frame"

> t2=iris[,1]
> class(t2)
[1] "numeric"
> head(t2, n=2)
[1] 5.1 4.9

取一列子集,还想保持数据框结构,怎么办?

答案:在[]中添加第三个参数 drop=F

复制代码
> t3=iris[,1, drop=F]
> class(t3)
[1] "data.frame"
> head(t3, n=2)
  Sepal.Length
1          5.1
2          4.9

这个在Seurat4源码中经常见到。

Tips: 为了稳健(robust),函数中对数据框取列子集,都建议一律加上 drop=F 参数。

相关推荐
LASDAaaa123120 分钟前
【计算机视觉】基于Mask R-CNN的自动扶梯缺陷检测方法实现
计算机视觉·r语言·cnn
没有梦想的咸鱼185-1037-166312 小时前
AI大模型支持下的:R-Meta分析核心技术:从热点挖掘到高级模型、助力高效科研与论文发表
开发语言·人工智能·机器学习·chatgpt·数据分析·r语言·ai写作
2501_9413331012 小时前
表格结构识别与内容解析——基于Cascade R-CNN的表格行、列、单元格自动检测与分类_1
分类·r语言·cnn
云州牧13 小时前
Mastering Shiny 08 User feedback
r语言
淮北4941 天前
科研绘图工具R语言
开发语言·r语言
余醉 | dtminer2 天前
R语言常见新手问题
开发语言·r语言
佳哥的技术分享2 天前
Function<T, R> 中 apply,compose, andThen 方法总结
java·学习·r语言
2501_942191773 天前
纺织品微观缺陷检测与分类:基于Faster R-CNN的改进模型实现与性能优化_1
分类·r语言·cnn
TDengine (老段)3 天前
TDengine R 语言连接器进阶指南
大数据·开发语言·数据库·r语言·时序数据库·tdengine·涛思数据
Katecat996634 天前
肾衰竭医学影像多类别目标检测:基于Mask R-CNN的囊肿、肾脏、结石和肿瘤六类病变特征识别_1
目标检测·r语言·cnn