基于从R中的另一个数据集的变量重新排序列

发布于 2025-02-10 01:03:18 字数 795 浏览 1 评论 0原文

我需要根据另一个数据集中的可变顺序重新排序数据集列。这是我的示例数据集:

df1 <- data.frame(id_1 = c(1,2,3,4),
                 item_2 = c(2,3,4,5),
                 location_3 = c(3,3,4,6))

> df1
  id_1 item_2 location_3
1    1      2          3
2    2      3          3
3    3      4          4
4    4      5          6

我需要根据df2 $ var2变量的顺序订购此df1数据集,

df2 <- data.frame(var1 = c(1,2,3),
                  var2 = c("location_3","item_2","id_1"))

> df2
  var1       var2
1    1 location_3
2    2     item_2
3    3       id_1

所需的输出应为:

> df3
  location_3 item_2 id_1
1          3      2    1
2          3      3    2
3          4      4    3
4          6      5    4

有任何想法吗?

谢谢!

I need to reorder my dataset columns based on a variable order in another dataset. Here is my sample dataset:

df1 <- data.frame(id_1 = c(1,2,3,4),
                 item_2 = c(2,3,4,5),
                 location_3 = c(3,3,4,6))

> df1
  id_1 item_2 location_3
1    1      2          3
2    2      3          3
3    3      4          4
4    4      5          6

I need to order this df1 dataset based on the order from df2$var2 variable

df2 <- data.frame(var1 = c(1,2,3),
                  var2 = c("location_3","item_2","id_1"))

> df2
  var1       var2
1    1 location_3
2    2     item_2
3    3       id_1

The desired output should be:

> df3
  location_3 item_2 id_1
1          3      2    1
2          3      3    2
3          4      4    3
4          6      5    4

Any ideas?

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

初见终念 2025-02-17 01:03:18

基于dplyr的可能解决方案:

library(dplyr)

df1 %>% relocate(df2$var2)

#>   location_3 item_2 id_1
#> 1          3      2    1
#> 2          3      3    2
#> 3          4      4    3
#> 4          6      5    4

A possible solution, based on dplyr:

library(dplyr)

df1 %>% relocate(df2$var2)

#>   location_3 item_2 id_1
#> 1          3      2    1
#> 2          3      3    2
#> 3          4      4    3
#> 4          6      5    4
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文