我有一个data.frame" df":
df
id.number names
1 102 Program ID 1
2 102 Program ID 1
3 11 Program ID 1
4 11 Program ID 1
5 1293 Program ID 1
6 1293 Program ID 1
7 132 Program ID 1
8 143 Program ID 1
9 143 Program ID 1
10 143 Program ID 1
11 143 Program ID 22
12 143 Program ID 22
13 143 Program ID 22
14 155 Program ID 22
15 155 Program ID 22
16 1552 Program ID 22
17 1553 Program ID 22
矢量:name_1 <- "Program ID 1"
现在我想找到&#34; id.number&#34;的唯一长度。通过&#34;计划ID 1&#34;并通过与向量"name_1"
匹配。
我可以找到&#34; id.number&#34;的唯一长度。通过&#34;计划ID 1&#34;与
length(unique(id.number[names=="Program ID 1"]))
但我希望通过将我的矢量与列#34;名称&#34;匹配来找到独特的长度。在data.frame&#34; df&#34;。
所以我需要(并希望)使用类似的东西:
length(unique(subset(....)
或
length(unique(subset .... %in% names_1
我的输出应该是列中的唯一长度/(数字)&#34; id.number&#34;并且不 data table
也不 list
。
期望的输出:
只是数字,在我的情况下,这是: 5
这也是代码length(unique(id.number[names=="Program ID 1"])).
答案 0 :(得分:1)
如评论中所述,您只需将处理向量的代码包装成with(df, ...)
语句:
with(df, length(unique(id.number[names=="Program ID 1"])))
或者概括为name_1
包含多个名称的情况:
with(df, length(unique(id.number[names%in%name_1])))