如何根据字符串的第一个和第三个字符过滤一列字符串?
Posted
技术标签:
【中文标题】如何根据字符串的第一个和第三个字符过滤一列字符串?【英文标题】:How do I filter a column of character strings based on their first and 3rd characters? 【发布时间】:2020-05-01 12:05:15 【问题描述】:我有一个 ICD 代码数据集,5 位代码描述医院患者的诊断,看起来像这样(但有 16000 名患者):
df <- c('S48.10', 'H38.13', 'R40.12')
我需要根据第一个字符是 S 和第三个字符是 8 来过滤它们,以过滤掉截肢患者。有关如何执行此操作的任何建议?
【问题讨论】:
ICD[substring(ICD, 1, 1) == "S" & substring(ICD, 3, 3) == "8"]
【参考方案1】:
这是 ICD 列上带有 grepl
的选项。使用的模式是“S”后跟任意字符 (.
),后跟从字符串开头 (^
) 开始的 8,以过滤数据集的行
subset(df1, grepl('^S.8', ICD))
【讨论】:
以上是关于如何根据字符串的第一个和第三个字符过滤一列字符串?的主要内容,如果未能解决你的问题,请参考以下文章