可能是一个简单的问题。我有一个如下的数据集。列出所有列元素名称
dat2 <- read.table(header=TRUE, text="
ID De Ep Ti ID1
A1123 A117 A121 A100 A11231
A1123 A108 C207 D110 E11232
A1124 A122 C207 D110 E11232
A1124 A117 C207 D110 E11232
A1124 A122 C208 D110 E11232
B1125 A108 C208 D110 E11232
B1125 A108 C208 D110 E11232
B1126 A122 C208 D110 E11233
C1126 A109 C208 D111 E11233
")
dat2
dat2
ID De Ep Ti ID1
1 A1123 A117 A121 A100 A11231
2 A1123 A108 C207 D110 E11232
3 A1124 A122 C207 D110 E11232
4 A1124 A117 C207 D110 E11232
5 A1124 A122 C208 D110 E11232
6 B1125 A108 C208 D110 E11232
7 B1125 A108 C208 D110 E11232
8 B1126 A122 C208 D110 E11233
9 C1126 A109 C208 D111 E11233
我可以通过使用table
函数得到总结。
table(dat2$ID)
A1123 A1124 B1125 C1126
2 3 3 1
table(dat2$De)
A108 A109 A117 A122
3 1 2 3
我想列出前两列中的所有元素名称,如下所示。
t <- c("A1123", "A1124","B1125","C1126", "A108", "A109", "A117", "A122")
t
[1] "A1123" "A1124" "B1125" "C1126" "A108" "A109" "A117" "A122"
基于Neal的快速反应,我可以轻松获得前两列的列表。
with(dat2, union(ID, De))
[1] "A1123" "A1124" "B1125" "C1126" "A117" "A108" "A122" "A109"
但是,如果我想从所有列中获取名称列表,则上述代码不起作用。
是所有列,的确, “因子” S ?那么,我想,你能做的最有效的方法就是连接每一列的“levels”。 –
我编辑了数据。事实上,都是因素。 –