[英]Create a column in one dataframe based on another column in another dataframe in R
[英]Filter one dataframe based on the last two digits of another dataframe's value under one column in R
表 Data_frame 有一个 ID 列,其中包含 1000 多个参与者的信息,例如“Sample_LI.01”
My_ColData 还有一个 ID 列,其中仅包含 40 个参与者的不同信息,例如“Sample_LI-01”。
我想使用 My_ColData 中的 ID 列来过滤 Data_frame 表。 但是,您可能已经注意到 ID 的格式略有不同。 我想知道是否可能基于最后两位数字进行过滤的最佳方法?
到目前为止我有一个代码,看起来像
data_frame %>% filter (ID %in% my_ColData$ID, if______)
不知道在这种情况下要写什么。 还是有更好的方法来实现我的目标? 任何建议,将不胜感激。
我们可以使用str_replace
将-
替换为.
将“data_frame”中的“ID”与“my_ColData”中的“ID”相匹配
library(dplyr)
library(stringr)
data_frame %>%
filter(ID %in% str_replace(my_ColData$ID, '-', '.') )
我们可以使用str_sub
来检查最后两位数字
library(dplyr)
library(stringr)
data_frame %>%
filter(str_sub(ID, -2) %in% str_sub(my_colData$ID, -2))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.