如何确定as.Date,R中origin的正确参数
我在R中有一个数据集,其中包含格式为yyyy/mm/dd的日期列。我正试图使用as.Date将这些日期转换为R中的日期对象。但是,我似乎找不到origin输入as.Date的正确参数。下面的代码是我一直在尝试的一个示例。我使用的是Excel中的CSV文件,因此根据我查看过的其他网站,我使用了origin=“1899/12/30”如何确定as.Date,R中origin的正确参数,r,arguments,R,Arguments,我在R中有一个数据集,其中包含格式为yyyy/mm/dd的日期列。我正试图使用as.Date将这些日期转换为R中的日期对象。但是,我似乎找不到origin输入as.Date的正确参数。下面的代码是我一直在尝试的一个示例。我使用的是Excel中的CSV文件,因此根据我查看过的其他网站,我使用了origin=“1899/12/30” > as.Date(2001/04/26, origin="1899/12/30") [1] "1900-01-18" 但是,这不起作用,因为输入日期200
> as.Date(2001/04/26, origin="1899/12/30")
[1] "1900-01-18"
但是,这不起作用,因为输入日期2001/04/26返回为“1900-01-18“。我需要将日期转换为日期对象,然后才能将日期转换为朱利安日期。您可以使用数字值或字符值将is
转换为.date
。当您在R中键入2001/04/26
时,即进行除法运算,得到19.24(一个数值)。数值需要一个原点,而您提供的数字是该原点的偏移量。所以你离你的出生地还有19天,即“1900-01-18”。像2001年4月26日这样的日期是
as.Date(40659, origin="1899-12-30")
# [1] "2011-04-26"
如果Excel中的日期“看起来像”日期,则它们很可能是字符值(或因子)。要将字符值转换为带有as.Date()
的日期,请指定格式。这里
as.Date("2001/04/26", format="%Y/%m/%d")
# [1] "2001-04-26"
有关特殊%
变量的详细信息,请参见?strtime
。现在,如果您使用read.table或其他工具将数据读入data.frame,那么您的变量可能是一个因素。如果是这种情况,则需要使用“转换为字符”
as.Date(as.character(mydf$datecol), format="%Y/%m/%d")
我想你要找的是
格式
而不是来源
,试试作为.Date(“2001/04/26”,“Y/%m/%d”)