在字符串中查找特定字符,将其删除,将其余字符转换为数字并除以5

时间:2016-05-06 01:00:38

标签: r string character

我正在使用R中的数据框。它有大约18列,其中包含数字。有些细胞有一个" P"接下来是一个数字。对于这些情况,我想删除" P",将其余字符转换为数字,然后取该数字除以5.

    > Replace<-data.frame(group=c("P4", "25", "4", "P1", "25"))
    > Replace
    group
    1    P4
    2    25
    3     4
    4    P1
    5    25
    > 

例如,在&#34;替换&#34;我喜欢&#34; P4&#34;成为&#34; 0.8&#34;和&#34; P1&#34;是&#34; 0.2&#34;。但是&#34; 25&#34;,&#34; 4&#34;,&#34; 25&#34;应该保持不变。谢谢你的帮助!

1 个答案:

答案 0 :(得分:3)

library(dplyr)
Replace <- mutate(Replace, group = ifelse(grepl("P", group),
                  as.numeric(gsub("P", "", group))/5, as.character(group)))