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

相关推荐
关关钧8 小时前
【R语言】聚类分析
开发语言·r语言
清同趣科研18 小时前
扩增子分析|基于R包ggClusterNet包进行生态网络分析—十种可视化布局包括igraph,Gephi和maptree
开发语言·r语言
关关钧2 天前
【R语言】回归分析
开发语言·回归·r语言
Tiger Z3 天前
R 语言科研绘图第 24 期 --- 直方图-高亮
开发语言·程序人生·r语言·贴图
Biomamba生信基地4 天前
R语言学习计划启动
学习·r语言·生信
珏世佳人4 天前
GBD研究——美国州级地图(附资源)
r语言
yaoxin5211234 天前
第二十二章 P - R 开头的术语
linux·运维·r语言
qwy7152292581635 天前
8-R列表
windows·python·r语言
宠物与不尤编程6 天前
Python与R机器学习(1)支持向量机
python·机器学习·支持向量机·r语言
关关钧7 天前
【R语言】t检验
开发语言·r语言