You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何重排序对称tibble实现行名与列名顺序一一对应

解决方案

你可以通过将行顺序和除row_name外的列名顺序对齐实现需求,两种常用实现方式如下:

使用dplyr实现

library(dplyr)

# 提取除第一列row_name外的列名,作为行的目标排序顺序
target_order <- colnames(out)[-1]

# 按照目标顺序对行重排
out_sorted <- out %>%
  arrange(factor(row_name, levels = target_order))

使用基础R实现

# 提取目标排序顺序
target_order <- colnames(out)[-1]
# 匹配目标顺序对应的行号,按行号取子集重排
out_sorted <- out[match(target_order, out$row_name), ]

两种写法逻辑完全一致:先获取排除row_name后的列名顺序作为行的排序规则,再通过匹配规则重排行,运行后得到的结果和你给出的预期输出完全匹配。

内容的提问来源于stack exchange,提问作者rnorouzian

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 03:15:03