如何将 2021-22 年转换为 2021-22 年

How do I convert 2021-22 to as year 2021-22

年份是因子类型。我想转换为日期。如何将其转换为日期?data set image

假设你有:

my_df <- data.frame(year = as.factor(c("1983-84", "1984-85")))

您可以使用以下方法提取结束年份:

my_df$year_num = as.numeric(substr(as.character(my_df$year), 1, 4)) + 1

这需要作为因子的 year 变量,根据其标签将其转换为字符,提取前 4 个字符(起始年份),转换为数字,然后加一。如果您希望 year_num 显示起始年份,请跳过最后一步。

您还可以使用以下方式指定特定日期,例如财政年度的最后一天(假设此处为 6 月 30 日):

my_df$FY_end = as.Date(paste0(my_df$year_num, "-06-30"))

结果

     year year_num     FY_end
1 1983-84     1984 1984-06-30
2 1984-85     1985 1985-06-30


> str(my_df)
'data.frame':   2 obs. of  3 variables:
 $ year    : Factor w/ 2 levels "1983-84","1984-85": 1 2
 $ year_num: num  1984 1985
 $ FY_end  : Date, format: "1984-06-30" "1985-06-30"