问题描述
我有 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