从R中的字符串中删除字母数字和特殊字符
Posted
技术标签:
【中文标题】从R中的字符串中删除字母数字和特殊字符【英文标题】:Remove alphanumeric and special character from a string in R 【发布时间】:2022-01-22 12:37:37 【问题描述】:mydata.dt=
Candidate.index | Score |
---|---|
1 | 0: most of the time (5-7days/week) |
2 | 0: most of the time (5-7days/week) |
3 | NA |
4 | 3 : less likely (less than 1 per day) |
5 | 1: a moderate amount of time (3-4 days per week) |
6 | 0: most of the time (5-7days per week) |
7 | 2: some times (3-4 days per week) |
想要的输出---
mydata.dt=
Candidate.index | Score |
---|---|
1 | 0 |
2 | 0 |
3 | NA |
4 | 3 |
5 | 1 |
6 | 0 |
7 | 2 |
使用的代码:
观察结果是因素,因此首先将它们转换为字符-
mydata.dt [, Score := as.character(Score)]
然后尝试使用此代码删除分数的描述---
mydata.dt$Score <- as.integer(gsub('[a-zA-Z]', '', mydata.dt$Score))
这给出了一个警告信息: 在 eval(ei, envir) 中:强制引入的 NA。 输出 Score 列中的所有观察值都转换为 NA
这可能是一个重复的问题,我尝试了很多使用上一个线程中可用的代码,但它似乎对我来说效果不佳。请帮忙。
【问题讨论】:
【参考方案1】:在这里使用sub
:
mydata.dt$Score <- sub("^(\\d+):.*$", "\\1", mydata.dt$Score)
【讨论】:
以上是关于从R中的字符串中删除字母数字和特殊字符的主要内容,如果未能解决你的问题,请参考以下文章
R REGEX匹配-至少1个小写字母,1个数字,并且没有8个长度的特殊字符[重复]
Python移除指定文件夹中所有文件名称中的特殊字符(数字特殊字符空格等)只保留字母字符