我知道有一个函数unique()可以从向量中提取唯一值。但我失去了它的名字。
前任。
vector = c("A" = 1, "B" = 2, "A" = 1, "C" = 3, "B" = 2, "D" = 3, "D" = 3)
Run Code Online (Sandbox Code Playgroud)
如果我打印,我应该看到:
A B A C B D D
1 2 1 3 2 3 3
Run Code Online (Sandbox Code Playgroud)
预期输出:
A B C D
1 2 3 3
Run Code Online (Sandbox Code Playgroud)
尝试:
如果我使用:unique(vector)我只得到1 2 3
如果我使用:vector[!duplicated(vector)]我得到:
A B C
1 2 3
Run Code Online (Sandbox Code Playgroud)
这很接近,但"D" = 3缺少。
vector = c(A=1,B=2,A=1,C=3,B=2,D=3,D=3)
Run Code Online (Sandbox Code Playgroud)
当你这样做时,
vector[!duplicated(vector)]
Run Code Online (Sandbox Code Playgroud)
它在值vector而不是名称中查找重复项,因此您得到的输出是
A B C
1 2 3
Run Code Online (Sandbox Code Playgroud)
如果你想找到独特的名字,那么你应该运行duplicated在功能上names的vector
vector[!duplicated(names(vector))]
A B C D
1 2 3 3
Run Code Online (Sandbox Code Playgroud)
也可以使用类似的输出来实现 unique
vector[unique(names(vector))]
A B C D
1 2 3 3
Run Code Online (Sandbox Code Playgroud)