如何将数字转换为R中的工作日字符

  • 本文关键字:工作日 字符 数字 转换 r
  • 更新时间 :
  • 英文 :


我目前正在处理一个项目,其中有一个名为"工作日"的列。此列包含日期0:6。我是R的新手,想创建一个新的列,该列对每个数字都有工作日缩写,例如"R";0=周日、1=周一";,等等。下面是我正在使用的数据帧的图像。任何帮助和提示都会让人大吃一惊。

数据帧的图像

我们可以将基于零的工作日索引添加到2017-01-01,这是一个周日。

x <- c(0:6)
days_abbrev <- substr(weekdays(as.Date("2017-01-01") + x), 1, 3)
days_abbrev
[1] "Sun" "Mon" "Tue" "Wed" "Thu" "Fri" "Sat"

或者使用@DarrenTsai的出色建议,我们可以将TRUE作为第二个参数传递给weekdays(),以使用缩写:

weekdays(as.Date("2017-01-01") + x, TRUE)

您可以使用%a格式直接从日期列执行此操作。。。

format(as.Date("2017-01-05"), "%a")
[1] "Thu"

最新更新