【发布时间】:2019-09-30 15:23:06
【问题描述】:
我对 R 很陌生,现在正在使用由我和我的主管编写的脚本。 不幸的是,我无法将 gsub() 的一个实例用于我的样本名称。 以前的版本看起来像这样(前后在整个 df 中变化):
"1: Anterior LN_60_026.fcs"
并使用
拆开cell.counts$EH_ID <- gsub("\\d+: (Anterior|Posterior) LN_(\\d{2})_\\d{3}.fcs", "LM02\\2", cell.counts$Sample)
cell.counts$Position <- gsub("\\d+: (Anterior|Posterior) LN_(\\d{2})_\\d{3}.fcs", "\\1", cell.counts$Sample)
现在我面临一个类似的问题,需要进行一些细微的调整。因为我不知道 gsub() 语法是如何工作的,所以我被困住了:
"1: mLN_681_030.fcs"
MLN 和脾脏在整个 df 中发生变化,我尝试调整的代码不再起作用:
cells$Mouse_ID <- gsub("\\d+: (mLN|spleen)(_\\d{2})_\\d{3}_\\.fcs", "AA_0\\2", cells$Sample)
cells$tissue <- gsub("\\d+: (mLN|spleen)_(\\d{3})_\\d{3}.fcs", "\\1", cells$Sample)
我应该补充一点,“组织”分离有效,但样本数提取无效。 如果有人能向我解释我做错了什么以及这段代码中的字符具体做了什么,我将不胜感激。 P.S.:是的,我使用过 ?gsub,但我发现 R 中的帮助文件对初学者很不友好,也不太了解。
【问题讨论】:
-
gsub 使用正则表达式。这个网站 (regular-expressions.info) 是一个很好的参考。而这个 (regexr.com) 有一个很好的工具来交互式测试它们。
标签: r string gsub extraction