【问题标题】:R function to substitute a character with any integerR函数用任何整数替换字符
【发布时间】:2021-05-20 03:10:07
【问题描述】:

我有 2 个数据框,其中包含代表各种工作的数字代码。
一个 df (df_a) 有来自人口普查的代码,另一个 (df_b) 有代表基本工作的代码。
我需要在 df_a 中创建一个新列,其中根据df_b 中的代码将作业列为必要或非必要。
问题是 df_a 中的某些工作代码具有字符 M = df_b 中的多个整数(例如,df_a 中的 123M5 = 12335、12345、12355... 在 df_b 中)。我试图通过在 df_a 中设置M='\\d' 来实现这一点,但没有成功......关于更好的解决方法有什么想法吗? 谢谢!

【问题讨论】:

  • 我以为您想匹配或替换“M”的数字值?

标签: r bioinformatics census


【解决方案1】:

这可能是你需要的:

df_a <- data.frame(job = c("1233M5", "12345", "1235M5" , "12346"))
df_b <- data.frame(essential = c(12335, 12346))

df_a$essential <- 0
df_a$essential[which(as.numeric(gsub("M", "", df_a$job)) %in% df_b$essential)] <- 1

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-25
    • 1970-01-01
    • 2012-11-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-06
    相关资源
    最近更新 更多