📜  在 R 中将日期转换为星期几

📅  最后修改于: 2022-05-13 01:54:19.961000             🧑  作者: Mango

在 R 中将日期转换为星期几

在本文中,我们将看到在 R 编程语言中将日期转换为星期几的不同方法。

在 R 语言中将给定日期转换为星期几的三种不同类型的方法如下:

  • 使用工作日函数将日期转换为星期几
  • 使用 strftime函数将日期转换为星期几
  • 使用 as.POSIXlt函数将日期转换为星期几

方法一:使用weekdays()函数。

在这个方法中,我们将日期转换为星期几,用户需要调用 weekdays()函数,该函数是 R 语言中的内置函数,并将日期的向量传递给它。通过这样做,它将向用户返回每个给定日期的工作日。

工作日函数:该函数用于提取工作日、月份或季度,或儒略时间。



例子:

在此示例中,我们将使用 r 语言中的工作日函数将存储在大小为 4 的向量中的日期转换为星期几。

R
date <- data.frame(date = as.Date(c("2020-10-11","2000-10-01",
                                    "1999-12-08","2021-05-05")))
weekday <- weekdays(date$date)                
print(weekday)


R
date <- data.frame(date = as.Date(c("2020-10-11","2000-10-01",
                                    "1999-12-08","2021-05-05")))
weekday <- strftime(date$date, "%A")
print(weekday)


R
date <- data.frame(date = as.Date(c("2002-12-11",   
                                        "2000-07-11",
                                        "1900-12-11",
                                        "2015-11-11")))
  
weekday <-c("Monday", "Tuesday", "Wednesday",
                "Thursday", "Friday", "Saturday",
                "Sunday")[as.POSIXlt(date$date)$wday]
print(weekday)


输出:

[1] "Sunday"    "Sunday"    "Wednesday" "Wednesday"

方法二:使用strftime()函数。

在这种转换星期几的方法中,用户需要调用内置函数strftime()函数并将受尊重的参数传递给它,然后作为返回,该函数将给出给定日期的工作日给用户。



strftime函数:该函数用于在字符表示和表示日历日期和时间的“POSIXlt”和“POSIXct”类的对象之间进行转换。

例子:

在此示例中,我们将使用 R 语言中的 strftime函数将存储在大小为 4 的向量中的给定日期转换为星期几。

电阻

date <- data.frame(date = as.Date(c("2020-10-11","2000-10-01",
                                    "1999-12-08","2021-05-05")))
weekday <- strftime(date$date, "%A")
print(weekday)

输出:

[1] "Sunday"    "Sunday"    "Wednesday" "Wednesday"

方法 3:使用 as.POSIXlt()函数

在这种将日期转换为星期几的方法中,用户需要调用 as.POSIXlt()函数,这是一个内置函数,这里用户必须将所需的参数传递给该函数,并以此作为回报,用户将获得所有给定日期的工作日。

as.POSIXlt()函数:该函数用于操作代表日历日期和时间的“POSIXlt”和“POSIXct”类的对象。

在此示例中,我们将使用 R 语言中的 as.POSIXlt()函数将存储在大小为 4 的向量中的给定日期转换为星期几。

电阻

date <- data.frame(date = as.Date(c("2002-12-11",   
                                        "2000-07-11",
                                        "1900-12-11",
                                        "2015-11-11")))
  
weekday <-c("Monday", "Tuesday", "Wednesday",
                "Thursday", "Friday", "Saturday",
                "Sunday")[as.POSIXlt(date$date)$wday]
print(weekday)

输出:

[1] "Wednesday" "Tuesday"   "Tuesday"   "Wednesday"