将刻度线√替换为1
Replacing tick mark √ with 1
我有一些学生在 Excel 文件中用符号 √ 勾选的数据。我需要在我的专栏中将其替换为 1(一)。我在出现此符号的列中有 50 个值。我怎样才能使用 dplyr 做到这一点?或者其他一些 R 函数?
您可以使用 stringr
中的 str_replace
:
library(dplyr)
library(stringr)
data
A B
1 1 √
2 2 2
3 3 √
4 4 √
5 5 2
data %>%
mutate(B = str_replace(B,"√","1"))
A B
1 1 1
2 2 2
3 3 1
4 4 1
5 5 2
如果您还想转换为数字,可以添加 as.numeric
:
data %>%
mutate(B = as.numeric(str_replace(B,"√","1")))
示例数据
set.seed(3)
data <- data.frame(A= 1:5,B = gsub("1","√",round(runif(5,1,2))))
我有一些学生在 Excel 文件中用符号 √ 勾选的数据。我需要在我的专栏中将其替换为 1(一)。我在出现此符号的列中有 50 个值。我怎样才能使用 dplyr 做到这一点?或者其他一些 R 函数?
您可以使用 stringr
中的 str_replace
:
library(dplyr)
library(stringr)
data
A B
1 1 √
2 2 2
3 3 √
4 4 √
5 5 2
data %>%
mutate(B = str_replace(B,"√","1"))
A B
1 1 1
2 2 2
3 3 1
4 4 1
5 5 2
如果您还想转换为数字,可以添加 as.numeric
:
data %>%
mutate(B = as.numeric(str_replace(B,"√","1")))
示例数据
set.seed(3)
data <- data.frame(A= 1:5,B = gsub("1","√",round(runif(5,1,2))))