目标:重命名数据集中特定字符变量的值
1.首先建立一个示例xlsx文件。
2.读入文件,如未安装readxl包则需要安装
library(readxl) #加载readxl包
GDP_province <- read_xlsx("省份.xlsx") #读入xlsx文件,储存至名为GDP_province的数据框里
3.查看province变量数值类型
class(GDP_province$province)
#运行结果如下:
> class(GDP_province$province)
[1] "character"
#表明province变量的确为字符串类型
4.利用mutate和case_when函数重新赋值province变量
library(tidyverse) #加载tidyverse包,如未安装则需安装
GDP_province %>%
mutate( #利用mutate函数修改变量province
province = case_when( #返回的新值全部赋予原来的变量province,即覆盖原值
str_detect(province,"宁夏") ~ "宁夏自治区", #变量值中包含“宁夏”二字的返回新值“宁夏自治区”
str_detect(province,"新疆") ~ "新疆自治区",
str_detect(province,"内蒙") ~ "内蒙古自治区",
str_detect(province,"广西") ~ "广西自治区",
TRUE ~ province #不符合条件的变量值返回原值
)
)