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

发布于 2025-01-21 03:36:53 字数 111 浏览 0 评论 0原文

年份采用因子类型。我想转换为日期。如何将其转换为日期?数据集图像

The year is in factor type. I want to convert as date. How do I convert it to date?data set image

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

何时共饮酒 2025-01-28 03:36:53

假设您有:

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

这是变量,这是一个因素,将其转换为基于其标签的字符,提取前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"

Suppose you have:

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

You could extract the ending year using:

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

This takes the year variable which is a factor, converts it to character based on its labels, extracts the first 4 characters (the starting year), converts to number, and adds one. If you want year_num to instead show the starting year, skip that last step.

You could also specify a specific date like the last day of the FY (assuming here June 30th) using:

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

Result

     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"
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文