【发布时间】:2021-06-21 16:31:06
【问题描述】:
抱歉,如果这个问题是重复的/非常基本的,但我找不到任何可以回答我的具体问题的东西。我有一个包含多个变量的数据框,我想根据每列中的信息对其进行子集化,并为每个变量创建新的数据框。示例数据如下。 数据:
Column I Want var1 var2 var3
A NA NA Y
B Y NA NA
C NA NA NA
D Y Y NA
E Y NA Y
F NA Y Y
G NA NA Y
最后,我希望每一列都有单独的数据框,如下所示: 变量1:
Column I Want
B
D
E
var2:
Column I Want
D
F
var3:
Column I Want
A
E
F
G
这是我的代码:
names <- names(data)
for (i in 1:length(names)) {
assign(names[i], subset(data, names[i] == "Y", select = "Column I Want"))
}
这将为我提供三个单独的数据框,其中包含我想要的列,但是,每个数据框中有 0 个观察值。我怀疑'names[i] == "Y"' 部分我做错了,但我不太明白。任何人都可以提供一个简单的答案吗?谢谢!
【问题讨论】: