我在数据框中有一个列,如下所示:
npt2$name
# [1] "Andreas Groll, M.D."
# [2] ""
# [3] "Pan-Chyr Yang, PHD"
# [4] "Suh-Fang Jeng, Sc.D"
# [5] "Mostafa K Mohamed Fontanet Arnaud"
# [6] "Thomas Jozefiak, M.D."
# [7] "Medical Monitor"
# [8] "Qi Zhu, MD"
# [9] "Holly Posner"
# [10] "Peter S Sebel, MB BS, PhD Chantal Kerssens, PhD"
# [11] "Lance A Mynderse, M.D."
# [12] "Lawrence Currie, MD"
Run Code Online (Sandbox Code Playgroud)
我试过gsub但没有运气.在做之后,toupper(x)我需要用什么都不替换'MD'或'MD'或'PHD'的所有实例.
有一个很好的简短技巧吗?
事实上,我有兴趣看到它在一个字符串上完成,并且在整个列表中的一个命令中完成的方式有多么不同.
42-*_*42- 25
这些都是:
gsub("MD|M\\.D\\.|PHD", "", test) # target specific strings
gsub("\\,.+$", "", test) # target all characters after comma
Run Code Online (Sandbox Code Playgroud)
上面的Matt Parker和下面的Tommy都提出了"MRCP","PhD","D.Phil"的问题.和'博士' 或者应该寻找和删除其他英国或大陆的博士学位.也许@ user56可以告知意图是什么.