如何将部分字符数据提取到新列

时间:2016-04-23 07:42:12

标签: r function grepl

我得到了这个df

AGE_TXT
3 weeks
1 year
3 years

我用

strsplit(df$AGE_TXT, " ")

要拆分数据,但是我有一个问题,如何使用数据创建新列

我试着用 grep("year", df$AGE_TXT),但它只给我真/假

我喜欢用数据创建新专栏

0
1
3

0为3周,1为1年,3为3年

1 个答案:

答案 0 :(得分:1)

您可以使用ifelse

df$new <- ifelse(grepl('year', df$AGE_TXT), gsub('\\D', '', df$AGE_TXT), 0)
df
#  AGE_TXT new
#1 3 weeks  0
#2  1 year  1
#3 3 years  3