Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 将yyyymm整数转换为日期_R_Date_Integer - Fatal编程技术网

R 将yyyymm整数转换为日期

R 将yyyymm整数转换为日期,r,date,integer,R,Date,Integer,我想将YYYYMM整数转换为日期,而不将其转换为字符(=是否有类似于SAS中的mdy函数?)。我想替换此代码: dateint<-201511 datestr<-paste(toString(dateint,length=8),'01') date<-as.Date(datestr,'%Y%m%d') print(date) class(date) dateint该软件包lubridate具有一个功能ymd,可接受数字输入: > library(lubrida

我想将
YYYYMM整数
转换为日期,而不将其转换为字符(=是否有类似于SAS中的mdy函数?)。我想替换此代码:

 dateint<-201511
 datestr<-paste(toString(dateint,length=8),'01')
 date<-as.Date(datestr,'%Y%m%d')
 print(date)
 class(date)

dateint该软件包lubridate具有一个功能
ymd
,可接受数字输入:

> library(lubridate)
> ymd(20151101)
[1] "2015-11-01 UTC"

但是,您需要在末尾添加日期

lubridate软件包有一个功能
ymd
,可接受数字输入:

> library(lubridate)
> ymd(20151101)
[1] "2015-11-01 UTC"

但是,您需要在末尾添加日期

请解释为什么您的解决方案不足以满足您的目的。由于闰年(以及与之相关的复杂规则),不解析字符串(从而使用操作系统设施)的解决方案是不可行的。为什么转换为字符不可行?在我看来,将数字转换为字符,然后再转换回数字(=日期)感觉很奇怪。也许这是一个愚蠢的问题,或者让我用这样的方式提出这样的问题:有经验的人会考虑第一段代码是否正确的编程?但是,你所拥有的不是真正的数字。@ r.USER。05APR,你的代码很好。只有您不需要使用toString,因为.character就足够了。您甚至不需要使用该选项,
paste
将自动将数值转换为字符串。请解释为什么您的解决方案不足以满足您的需要。由于闰年(以及与之相关的复杂规则),不解析字符串(从而使用操作系统设施)的解决方案是不可行的。为什么转换为字符不可行?在我看来,将数字转换为字符,然后再转换回数字(=日期)感觉很奇怪。也许这是一个愚蠢的问题,或者让我用这样的方式提出这样的问题:有经验的人会考虑第一段代码是否正确的编程?但是,你所拥有的不是真正的数字。@ r.USER。05APR,你的代码很好。只有您不需要使用toString,因为.character就足够了。您甚至不需要使用它,
paste
将自动将数值转换为字符串。它在内部转换为字符。我没有声明它没有:)它在内部转换为字符。我没有声明它没有:)