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 参数。

相关推荐
生信圆桌5 小时前
在 Docker 版 RStudio 中安装 Seurat V4 的完整教程 (同样适用于普通R环境安装)
docker·容器·r语言
QH_ShareHub6 小时前
R包compareGroups详细用法
r语言·教程·comparegroups
拓端研究室TRL6 小时前
R语言非参数回归预测摩托车事故、收入数据:局部回归、核回归、LOESS可视化...
开发语言·数据挖掘·回归·r语言·kotlin
高山莫衣1 天前
逆概率加权(R和Python案例)
开发语言·python·r语言
码农超哥同学1 天前
Python知识点:如何使用Python与R进行互操作(rpy2)
开发语言·python·面试·r语言·编程
为为-180-3121-14552 天前
R语言机器学习遥感数据处理与模型空间预测技术及实际项目案例分析
开发语言·机器学习·r语言
十三画者2 天前
R包:gplots经典热图
r语言·数据可视化
小魏冬琅2 天前
从零开始学习R语言
开发语言·学习·r语言
万木春❀2 天前
【R语言】fs 工具功能速查
r语言