2016-12-24 105 views
-2

我有一个文件,其中包含下面的数据,我正在尝试将包含“GBM1,GBM10 ...”的列“条件”更改为通用名称“GBM”。 我需要R命令帮助将它们转换为GBM。 我想知道如何使用dplyr来点。如何替换R中列的内容?

下面是数据..

dat <- data.frame(
sample = c("GSM564972", "GSM564973", "GSM564974"), 
condition= c("GBM1", "GBM10", "GBM11")) 

希望的输出:

sample condition 
GSM564972  GBM 
GSM564973  GBM 
GSM564974  GBM 
+1

[R中更换一整列]的可能的复制一个选项(http://stackoverflow.com/questions/19295277/replacing-a-whole-column-in- R) – Ale

回答

0

U可以使用sub函数从dplyrmutate以取代 “” 在组合数字(空字符串) 。

library(dplyr) 
# use sub within mutate to change column 
mutate(dat, condition = sub("\\d+", "", condition)) 

sub使用的例子见here

1

这里是str_extract

library(stringr) 
library(dplyr) 
dat %>% 
    mutate(condition = str_extract(condition, "\\D+"))