如何将因子转换为日期格式?
因子不能直接用作日期,因此如果某些功能需要日期格式,可以将因子转换为一个。在本文中,我们将研究在 R 编程语言中将因子转换为日期的两种不同方法。
方法一:使用as.Date()函数
在这种使用 as.Date()函数将因子转换为数据的方法中,用户需要简单地调用 as.Date()函数及其所需的参数和 R 控制台中的日期格式,并且该函数将进一步将日期返回到用户。
as.Date() :此函数用于在字符表示和表示日历日期的“Date”类对象之间进行转换。
Syntax: as.Date(x, format, tryFormats = c(“%Y-%m-%d”, “%Y/%m/%d”),optional = FALSE, …)
Parameters:
- x:-an object to be converted.
- format:-character string. If not specified, it will try tryFormats one by one on the first non-NA element, and give an error if none works.
- tryFormats:-character vector of format strings to try if the format is not specified.
- optional:-logical indicating to return NA if the format guessing does not succeed.
- …:-further arguments to be passed from or to other methods, including the format for as.character and as.Date methods.
Returns:
This function will be returning the date to the user.
例子:
R
gfg_factor <- factor(c("2021-05-02","2022-01-07",
"2000-12-17","2021-03-23",
"2021-04-11"))
gfg_factor
gfg_dates <- as.Date(gfg_factor, format = "%Y-%m-%d")
gfg_dates
R
install.packages("lubridate")
library("lubridate")
gfg_factor <- factor(c("2021-05-02","2022-01-07",
"2000-12-17","2021-03-23",
"2021-04-11"))
gfg_factor
gfg_dates <- ymd(gfg_factor)
gfg_dates
输出:
方法二:使用lubridate包的ymd()函数:
在这种r语言中将factor转换为日期的方法下,用户需要从lubridate库中调用ymd()函数,然后将所需的参数传递给该函数以获取该函数返回的日期。
要安装和导入 lubridate 库,用户需要遵循以下语法:-
句法:
# Install lubridate
install.packages(“lubridate”)
# load lubridate
library(“lubridate”)
安装并导入此库后,用户需要以因子为参数调用 ymd()函数。
ymd():此函数用于将存储在字符和数字向量中的日期转换为 Date 或 POSIXct 对象。这些函数识别任意非数字分隔符以及无分隔符。
Syntax: ymd(…, quiet = FALSE, tz = NULL, locale = Sys.getlocale(“LC_TIME”),truncated = 0)
Parameters:
- …:-a character or numeric vector of suspected dates
- quiet:-logical. When TRUE function evalueates without displaying customary messages.
- tz:-Time zone indicator. If NULL (default) a Date object is returned. Otherwise a POSIXct with time zone attribute set to tz.
- locale:-locale to be used, see locales.
- truncated:-integer. Number of formats that can be truncated.
Returns: This function will always be returning dates in return
例子:
电阻
install.packages("lubridate")
library("lubridate")
gfg_factor <- factor(c("2021-05-02","2022-01-07",
"2000-12-17","2021-03-23",
"2021-04-11"))
gfg_factor
gfg_dates <- ymd(gfg_factor)
gfg_dates
输出: