R函数用任何整数替换字符

问题描述

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

解决方法

这可能正是您所需要的:

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

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...