作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
假设我有以下数据框:
> test <- cbind(test=c(1, 2, 3), test=c(1, 2, 3))
> test
test test
[1,] 1 1
[2,] 2 2
[3,] 3 3
> new_df <- test[, "test"]
> new_df
[1] 1 2 3
最佳答案
出于实际原因,不建议使用相同的列名。但是,我们可以做一个比较( ==
)来得到一个逻辑向量并用它来提取列
i1 <- colnames(test) == "test"
new_df <- test[, i1, drop = FALSE]
data.frame
不允许重复的列名,并通过附加
.1
将其更改为唯一的
.2
等结尾是
make.unique
.与
matrix
(OP 的数据集),允许有重复的列名或行名(虽然不推荐)
split
lst1 <- lapply(split(seq_len(ncol(test)), colnames(test)), function(i)
test[, i, drop = FALSE])
unique
列名并做一个
==
通过使用
lapply
循环遍历它
lst2 <- lapply(unique(colnames(test)), function(nm)
test[, colnames(test) == nm, drop = FALSE])
关于r - 如何一次获取R中具有相同列名的所有列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58054663/
我是一名优秀的程序员,十分优秀!