我有一个字符串向量.看看我的矢量,它是awesome:
> awesome
[1] "a" "b" "c" "d" "d" "e" "f" "f"
Run Code Online (Sandbox Code Playgroud)
我想创建一个长度相同的新向量,awesome但必要时,字符串已被唯一化.例如,我所需函数的有效输出将是
> awesome.uniqueified
[1] "a" "b" "c" "d.1" "d.2" "e" "f.1" "f.2"
Run Code Online (Sandbox Code Playgroud)
有一个简单的,R-thonic和美丽的方式来做到这一点?我应该说我现实生活中的列表(它没有被调用awesome)包含25000个mircoarray探针集标识符.
当我开始编写一些通用函数(我确信我能做到)时,我总是很紧张,因为我确信有些R guru过去曾经遇到过这个问题,并用一些不可思议的算法来解决这个问题.甚至必须在矢量中存储超过一半的元素.我只是不确定他们可能称之为什么.可能不是uniqueify.
Dir*_*tel 20
尝试make.unique()帮助页面的第一个示例已经点亮的位置:
make.unique(c("a", "a", "a"))
[1] "a" "a.1" "a.2"
Run Code Online (Sandbox Code Playgroud)
帮助页面列出了Thomas Minka作为作者.有一天给他买啤酒:)