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

相关推荐
数据分析能量站16 小时前
目标检测-R-CNN
目标检测·r语言·cnn
matlabgoodboy19 小时前
数据分析帮做spss数据代分析stata实证python统计R语言eviews处理
python·数据分析·r语言
biomooc2 天前
R 语言 | 绘图的文字格式(绘制上标、下标、斜体、文字标注等)
开发语言·r语言
Tiger Z3 天前
R 语言科研绘图第 6 期 --- 散点图-基础
r语言·贴图
LvManBa3 天前
R 常用的内置软件包及功能介绍
开发语言·r语言·rstudio
新知图书4 天前
R语言的数据结构-数据框
开发语言·r语言
新知图书5 天前
R语言的字符串操作
开发语言·r语言
新知图书6 天前
R语言函数简介
开发语言·python·r语言
还没想好1236 天前
mlr3机器学习AUC的置信区间提取
人工智能·机器学习·r语言·学习笔记
拓端研究室TRL7 天前
R语言混合模型回归GBTM群组轨迹模型绘图可视化研究
开发语言·人工智能·数据挖掘·回归·r语言