有没有一个简单的函数可以让你在另一列之间或之后移动一列



我正在从这个发布的中寻找类似的东西

在数据帧的两列之间添加(插入(一列

add_column(dataset, d = 4:8, .after = 2)

然而,我并没有试图";添加";但是移动,是否有类似的东西可以删除文件的原始位置并保持更新

move_column(dataset, d = 4:8, .after = 2)

我喜欢在dplyr包中重新定位,它是tidyverse 的一部分

df_new<- dataset %>%
relocate(mycolumn, .after = the_other_column)

一种可能的方法:

move_column <- function(dataset, d, .after)
{
remaining <- setdiff(1:ncol(dataset), c(d, 1:.after))
dataset[,c(1:.after, d, remaining)]
}
head(mtcars)
#>                mpg cyl disp  hp drat    wt  qsec vs am gear carb
#> Mazda RX4     21.0   6  160 110 3.90 2.620 16.46  0  1    4    4
#> Mazda RX4 Wag 21.0   6  160 110 3.90 2.875 17.02  0  1    4    4
#> Datsun 710    22.8   4  108  93 3.85 2.320 18.61  1  1    4    1
head(move_column(mtcars, d = 4:5, .after = 2))
#>                mpg cyl  hp drat disp    wt  qsec vs am gear carb
#> Mazda RX4     21.0   6 110 3.90  160 2.620 16.46  0  1    4    4
#> Mazda RX4 Wag 21.0   6 110 3.90  160 2.875 17.02  0  1    4    4
#> Datsun 710    22.8   4  93 3.85  108 2.320 18.61  1  1    4    1

相关内容

  • 没有找到相关文章

最新更新