gpt4 book ai didi

删除数据框列表中的重复列 r

转载 作者:行者123 更新时间:2023-12-04 12:18:55 26 4
gpt4 key购买 nike

我有一个包含许多数据框的列表。每个数据框都包含重复的列。我只想返回每个数据框中的唯一列。我已经尝试了包括以下在内的几种代码,但仍然出现错误。我目前正在使用的代码如下,并且还列出了我列表中第一个数据框的描述。感谢您的帮助。

x  <- lapply(dataFiles, function(x){
for(i in 1:length(colnames(dataFiles)))
dataFiles[[!duplicated(dataFiles[[i]])]]
}
)



str(dataFiles[[1]])
'data.frame': 20381 obs. of 10 variables:
$ FILEID : chr "ACSSF" "ACSSF" "ACSSF" "ACSSF" ...
$ FILETYPE : num 2.01e+08 2.01e+08 2.01e+08 2.01e+08 2.01e+08 ...
$ STUSAB : chr "ny" "ny" "ny" "ny" ...
$ CHARITER : int 0 0 0 0 0 0 0 0 0 0 ...
$ SEQUENCE : int 1 1 1 1 1 1 1 1 1 1 ...
$ LOGRECNO : int 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 ...
$ B00001_001: int 212 215 278 246 235 NA 225 522 213 262 ...
$ B00002_001: int 108 124 126 105 122 NA 108 105 104 140 ...
$ LOGRECNO : int 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 ...
$ GEOID : chr "14000US36001000100" "14000US36001000200" "14000US36001000300" "14000US36001000401" ...

最佳答案

这是一个简单的例子:

tmp <- data.frame(seq(10), seq(10), rnorm(10))
colnames(tmp) <- c("A","A","B")

l <- list(tmp, tmp)

lapply(l, function(x) x[,!duplicated(colnames(x))])

或者如@agstudy 所述,您可以使用 unique

lapply(l, function(x) x[,unique(colnames(x))])

关于删除数据框列表中的重复列 r,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34933376/

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