从 R 中的字符串中删除字母数字和特殊字符
Remove alphanumeric and special character from a string in R
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
这可能是一个重复的问题,我使用上一个线程中可用的代码尝试了很多,但它似乎对我来说效果不佳。请帮忙。
在这里使用sub
:
mydata.dt$Score <- sub("^(\d+):.*$", "\1", mydata.dt$Score)
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
这可能是一个重复的问题,我使用上一个线程中可用的代码尝试了很多,但它似乎对我来说效果不佳。请帮忙。
在这里使用sub
:
mydata.dt$Score <- sub("^(\d+):.*$", "\1", mydata.dt$Score)