【问题标题】:How to extract part of character data to new column如何将部分字符数据提取到新列
【发布时间】:2016-04-23 07:42:12
【问题描述】:

我得到了这个 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 年 = 1)能够比较数据 ~age。

标签: r function grepl


【解决方案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

【讨论】:

    猜你喜欢
    • 2020-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-07
    • 1970-01-01
    • 2023-04-08
    • 2018-06-13
    相关资源
    最近更新 更多