有没有办法将列中的整数转换为 R 中的字符?
Is there a way to convert integers in a column to character in R?
我有一个数据框,它有不同的临床变量用于心力衰竭与否的患者?
我有一个性别列,其值为 0 和 1,0 对应女性,1 对应男性?
我的问题是
如何从中获取我的数据框列
gender
1
1
0
1
0
0
对此...
gender
Female
Male
Male
Female
Male
Female
Female
有没有办法将整数 0、1 转换为文本“女性”和“男性”
我们可以在转换为索引后通过向其加 1 来传递替换向量。在R
中,索引是从1开始的,因此在0、1上加上1,分别变为1和2,可以作为替换的位置索引
df1$gender <- c("Female", "Male")[df1$gender + 1]
ifelse()
可以这样工作:
df <- data.frame(gender = c(1,0,1,0,3))
df$gender2 <- ifelse(df$gender == 1, "Male", "Female")
df
#> gender gender2
#> 1 1 Male
#> 2 0 Female
#> 3 1 Male
#> 4 0 Female
#> 5 3 Female
也可以叠加多个条件:
df$gender3 <- ifelse(df$gender == 1, "Male",
ifelse(df$gender == 0, "Female", NA))
df
#> gender gender2 gender3
#> 1 1 Male Male
#> 2 0 Female Female
#> 3 1 Male Male
#> 4 0 Female Female
#> 5 3 Female <NA>
我有一个数据框,它有不同的临床变量用于心力衰竭与否的患者?
我有一个性别列,其值为 0 和 1,0 对应女性,1 对应男性?
我的问题是
如何从中获取我的数据框列
gender
1
1
0
1
0
0
对此...
gender
Female
Male
Male
Female
Male
Female
Female
有没有办法将整数 0、1 转换为文本“女性”和“男性”
我们可以在转换为索引后通过向其加 1 来传递替换向量。在R
中,索引是从1开始的,因此在0、1上加上1,分别变为1和2,可以作为替换的位置索引
df1$gender <- c("Female", "Male")[df1$gender + 1]
ifelse()
可以这样工作:
df <- data.frame(gender = c(1,0,1,0,3))
df$gender2 <- ifelse(df$gender == 1, "Male", "Female")
df
#> gender gender2
#> 1 1 Male
#> 2 0 Female
#> 3 1 Male
#> 4 0 Female
#> 5 3 Female
也可以叠加多个条件:
df$gender3 <- ifelse(df$gender == 1, "Male",
ifelse(df$gender == 0, "Female", NA))
df
#> gender gender2 gender3
#> 1 1 Male Male
#> 2 0 Female Female
#> 3 1 Male Male
#> 4 0 Female Female
#> 5 3 Female <NA>