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

相关推荐
AI科技星2 小时前
基于四维时空光速不变公设的量子几何与量子力学本质全维度推导验证
开发语言·人工智能·opencv·计算机视觉·数学建模·r语言
weixin_4932026314 小时前
R包**ggNetView**使用---(1)
r语言
YMWM_19 小时前
print(f“{s!r}“)解释
开发语言·r语言
拜托啦!狮子1 天前
并行处理相关⭐
r语言
国医中兴1 天前
Flutter 组件 r_flutter 的适配 鸿蒙Harmony 实战 - 驾驭资源映射自动化、实现鸿蒙端资产强类型引用与资产冲突静态校验方案
flutter·r语言·harmonyos
探序基因1 天前
安装空间转录组分析软件-R包SPATA2的安装
开发语言·r语言
劳工搬砖记录bot_ssprott3 天前
conda全流程安装seurat4及其依赖 | 包含各类报错解决
r语言·conda
白杆杆红伞伞3 天前
R_常用函数
开发语言·r语言
QH_ShareHub3 天前
Rstudio 与 R 打开 Rdata (压缩文件) 差异
java·前端·r语言
浩浩kids4 天前
R•Homework
开发语言·r语言