Evan の Logbook
✨ Updates
🎨 Style Guide
🧠 Creative Resources
🗒️ Mind Notes
🧭 Knowbase
📘 SOPs
🩺 Medical Research
🛠️ Tech Chronicles
💰 Fortune Blueprint
📈 R Visionary
📊 Statistics
🖼️ BioVis
🧭relocate():调整列顺序
type
status
date
slug
summary
tags
category
icon
password
comment
relocate() 是 dplyr 中用于改变列的排列位置的函数。与 select() 不同,它不删除或新增列,只做“换位”操作,非常适合在生成报告、导出表格前优化列结构。1. 函数原型
参数 | 说明 |
... | 要移动的列(列名、下标、或 tidyselect 辅助函数) |
.before | 将选中列插入到指定列之前(与 .after 二选一) |
.after | 将选中列插入到指定列之后 |
2. 示例数据
3. 典型用法
3.1 将单列移动到最前
效果:
score 列被移到第 1 列位置,其余列保持原顺序。3.2 移动到指定列之后
效果:
score 列出现在 id 之后。3.3 一次移动多列
效果:
score 和 group 列都被移动到 name 之前,且顺序为 (score, group)。3.4 结合辅助函数
将所有字符型列(如
name, group)移到最后:4. 高级技巧
- 与
select()区别:select()可以增删列及重排,relocate()专注于微调,操作更轻量。
- 多种 tidyselect:支持
starts_with("prefix")、contains("text")、matches()等。
- 管道链中使用:在
filter()、mutate()后直接relocate(),保持顺序逻辑。
- 报告导出前置:最后一步统一整理列顺序,确保表格字段更易阅读。
小结通过.before与.after,relocate()能让你轻松将关键列置前或置后;配合 tidyselect 辅助函数,则能一次批量调整多列位置,进一步提升数据框的可读性与美观度。
Prev
group_by():分组操作的基础
Next
select():灵活选择列
Loading...
YouTube 使用笔记