gpt4 book ai didi

r - 更改列的顺序

转载 作者:行者123 更新时间:2023-12-02 08:49:14 25 4
gpt4 key购买 nike

我正在处理一个包含 >40 列的大型数据框。我希望能够移动列,而不必指定所有列名。例如:

a<-c(1:5)  
b<-c(4,3,2,1,1)
Percent<-c(40,30,20,10,10)
Labels<-c("Cat","Dog","Rabbit","Rat","Mouse")
df1<-data.frame(a,b,Percent,Labels)

我如何将“标签”列移动到“a”列之前,而不必写所有其他列名(即,我可以只指定一个列在另一列之前/之后吗?)。

谢谢。

最佳答案

一些快速而肮脏的事情(即没有健全性检查等,并假设只提供了一个 colname):

moveToFirstCol <- function(df, colname) {
cnams <- colnames(df)
want <- which(colname == cnams)
df[, c(cnams[want], cnams[-want])]
}

给出:

> moveToFirstCol(df1, "Labels")
Labels a b Percent
1 Cat 1 4 40
2 Dog 2 3 30
3 Rabbit 3 2 20
4 Rat 4 1 10
5 Mouse 5 1 10

如果您需要额外的灵 active ,那应该会建议一种处理此类事情的方法。

关于r - 更改列的顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9788026/

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