【发布时间】:2018-02-02 20:37:27
【问题描述】:
我在 R data.table 的数据中有一个列,其中包含如下文本:
> my_table
descr
1: DESCRIPTIONA - JONES:4:2
2: DESCRIPTIONB - WILDER:6:7
---
253: DESCRIPTIONA - MANN:5:8
254: DESCRIPTIONB - ROBERTS:3:4
注意有两种描述:DESCRIPTIONA 和DESCRIPTIONB。如果是DESCRIPTIONA,我想用A 和B(如果是DESCRIPTIONB)替换整个描述部分,包括直到第一个分号的名称。这意味着我完全不在乎这个名字。输出应如下所示:
> my_table
descr
1: A:4:2
2: B:6:7
---
253: A:5:8
254: B:3:4
我正在尝试使用 gsub 来完成此操作,但我无法让正则表达式仅替换 (DESCRIPTIONA - JONES):4:2 部分。这很困难,因为每个名字都不一样,长度也不一样。有什么想法吗?
【问题讨论】:
标签: r regex data.table gsub