gpt4 book ai didi

R 使用 dplyr 将列移动到最后

转载 作者:行者123 更新时间:2023-12-03 07:06:31 28 4
gpt4 key购买 nike

对于具有 n 列的 data.frame,我希望能够从任何 1-(n-1) 位置移动列,以便第 n 列(即,非最后一列是最后一列)。我还想使用 dplyr 来完成此操作。我想这样做而不是简单地键入所有列的名称。

例如:

data<-data.frame(a=1:5, b=6:10, c=11:15)

这可行,但不是 dplyr 方式:

data[,c(colnames(data)[colnames(data)!='b'],'b')]

这是首先创建列bdplyr方法:

data%>%select(b, everything())

但这无法使列 b 最后:

data%>%select(everything(), b)

这可行,但需要我输入所有列:

data%>%select(a,c,b)

那么有没有一种优雅的 dplyr 方法可以做到这一点?

相关问题:

最佳答案

经过一些修改后,以下内容可以工作并且只需要很少的输入。

数据%>%选择(-b,b)


更新:dplyr 1.0.0

dplyr 1.0.0 引入了 relocate 动词:

数据 %>% 重新定位(b, .after = last_col())

我仍然更喜欢旧的“hacky”方式。

关于R 使用 dplyr 将列移动到最后,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43897844/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com