It looks like "04" in your example belongs to both "winter" and "Summer".
If we assume that one month belongs to only one season and the seasons are Winter, Summer, Monsoon and Postmonsoon, then one of the ways you can convert months to seasons is:
library(stringr) # to produce strings padded with zeros
air_quality <- data.frame(Month = str_pad(sample(1:12,12, replace=FALSE),
width = 2,
side = "left", pad="0"))
# Create a mapping vector and print it
( seasons <- c( rep("Winter",2),
rep("Summer",3),
rep("Monsoon",3),
rep("Postmonsoon",3),
"Winter") )
#[1] "Winter" "Winter" "Summer" "Summer" "Summer" "Monsoon" "Monsoon"
#[8] "Monsoon" "Postmonsoon" "Postmonsoon" "Postmonsoon" "Winter"
air_quality$Seasons <- seasons[ as.numeric(air_quality$Month) ]
air_quality
# Month Seasons
# 1 07 Monsoon
# 2 06 Monsoon
# 3 11 Postmonsoon
# 4 01 Winter
# 5 05 Summer
# 6 09 Postmonsoon
# 7 03 Summer
# 8 08 Monsoon
# 9 10 Postmonsoon
# 10 02 Winter
# 11 04 Summer
# 12 12 Winter