将R中的整数转换为日期
我想将整数列转换为日期。整数看起来像这个20160101。使用as.Date函数时,通过键入origin参数为2016-01-02,“生成新列”具有以下错误值55197-07-06。所以它与写值无关。我尝试了这么多代码,这是其中之一,可能是什么错误将R中的整数转换为日期,r,date,converters,R,Date,Converters,我想将整数列转换为日期。整数看起来像这个20160101。使用as.Date函数时,通过键入origin参数为2016-01-02,“生成新列”具有以下错误值55197-07-06。所以它与写值无关。我尝试了这么多代码,这是其中之一,可能是什么错误 data$newVar = as.Date(data$YearMonthDay, origin="2016-01-02") 此外,我的日期都在2016年,因此我想将日期的格式设置为只包括月份和日期 调用as.Date时使用格式选项: 请注意,此处不
data$newVar = as.Date(data$YearMonthDay, origin="2016-01-02")
此外,我的日期都在2016年,因此我想将日期的格式设置为只包括月份和日期 调用as.Date时使用格式选项:
请注意,此处不需要使用origin参数,因为即使传入数字数据,它也是以实际文本日期的形式存在的。从一个纪元起的天数传递时使用原点
因此,我想将日期格式化为只包含月份和日期
通常不建议朝这个方向走,而且在任何情况下,基准R日期必须有一个年份组成部分。因此,请包含年份组件,如果不想使用它,请不要使用它。在调用as.Date时使用格式选项:
请注意,此处不需要使用origin参数,因为即使传入数字数据,它也是以实际文本日期的形式存在的。从一个纪元起的天数传递时使用原点
因此,我想将日期格式化为只包含月份和日期
通常不建议朝这个方向走,而且在任何情况下,基准R日期必须有一个年份组成部分。因此,包括年份部分,如果您不想使用它,那么就不要使用它。仅出于您的兴趣,另一种方法是使用lubridate,只保留月份和日期 tmp%lubridate::ymd%>%格式%m-%d 请注意,之后您将只剩下一个字符串
tmp %>% lubridate::ymd() %>% format("%m-%d") %>% is.Date()
这将是错误的。如果没有今年的截止日期,这将是真的。因此,如Tim所述,为了保持日期格式,另一种lubridate方法是:
tmp %>% lubridate::ymd()
为了您的兴趣,另一种方法是使用lubridate,并且日复一日地保存 tmp%lubridate::ymd%>%格式%m-%d 请注意,之后您将只剩下一个字符串
tmp %>% lubridate::ymd() %>% format("%m-%d") %>% is.Date()
这将是错误的。如果没有今年的截止日期,这将是真的。因此,如Tim所述,为了保持日期格式,另一种lubridate方法是:
tmp %>% lubridate::ymd()
数据$YearMonthDay是整数而不是字符Yes,但它表示字符串日期,即整数值不是从纪元日期算起的天数。你试过我的答案了吗?至少根据我在本地的测试,它是有效的。data$YearMonthDay是整数而不是字符Yes,但它表示一个字符串日期,也就是说,您的整数值不是从纪元日期算起的天数。你试过我的答案了吗?至少根据我在当地的测试,它是有效的。