重新编码月份因素
Recode month factor
我有一个这样的数据集:
age month
5 apr
6 jun
7 dec
当我写的时候:
str(data$month)
我有,
Factor w/ 10 levels "apr","aug","dec",..: 7 7 7 7 7 7 7 7 7 7 ...
和
levels(data$month)
[1] "apr" "aug" "dec" "jul" "jun" "mar" "may" "nov" "oct" "sep"
我想将因子重新编码为实际月份。我试过:
month<-c("Jan","Feb","Mar",
"Apr","May","Jun",
"Jul","Aug","Sep",
"Oct","Nov","Dec")
data$month<-month[data$month]
data$month<-factor(data$month,levels=month.abb)
但是当我看到我的数据时,五月等于七月。我该怎么做?
谢谢
感谢@sotos 它的作品。
library(stringr)
data$month<-str_to_title(data$month)
data$month<-factor(data$month,levels=month.abb)
看来你只需要将首字母转换为大写即可。 stringr
包中有一个函数 str_to_title
可以做到这一点,即
library(stringr)
str_to_title(c('may', 'jun', 'jul'))
#[1] "May" "Jun" "Jul"
我有一个这样的数据集:
age month
5 apr
6 jun
7 dec
当我写的时候:
str(data$month)
我有,
Factor w/ 10 levels "apr","aug","dec",..: 7 7 7 7 7 7 7 7 7 7 ...
和
levels(data$month)
[1] "apr" "aug" "dec" "jul" "jun" "mar" "may" "nov" "oct" "sep"
我想将因子重新编码为实际月份。我试过:
month<-c("Jan","Feb","Mar",
"Apr","May","Jun",
"Jul","Aug","Sep",
"Oct","Nov","Dec")
data$month<-month[data$month]
data$month<-factor(data$month,levels=month.abb)
但是当我看到我的数据时,五月等于七月。我该怎么做?
谢谢
感谢@sotos 它的作品。
library(stringr)
data$month<-str_to_title(data$month)
data$month<-factor(data$month,levels=month.abb)
看来你只需要将首字母转换为大写即可。 stringr
包中有一个函数 str_to_title
可以做到这一点,即
library(stringr)
str_to_title(c('may', 'jun', 'jul'))
#[1] "May" "Jun" "Jul"