我有一个数据集,其中包含格式为“yyyy-mm-dd”的日期列,但是,当我将其导入R时,会出现一些随机数。我该如何解决这个问题?
非常感谢。
答案 0 :(得分:2)
我猜你是从excel导入的。在excel(实际上是每种语言)中,日期是一个整数,对应于自yyyy-mm-dd以来的天数(开始日期因程序而异)。当你在R中导入它们时,R只能看到整数值,而不是excel使用的格式(excel看到的格式)。
要将这些数字转换为R中的日期,您必须使用as.Date和原点1900-01-01,这是excel来源(通过打开excel,写一个' 1'在任何单元格中,并将该单元格的格式更改为日期。
as.Date(1, origin = as.Date("1899-12-31"))
(日期的变化是因为R在原点增加了一天,而excel从第1天开始)
答案 1 :(得分:1)
很难说因为您提供的信息很少,但我假设您正在尝试将Excel电子表格导入R中,并且日期是自1900年1月1日或1月1日以来的天数, 1904取决于文件是在Windows PC还是Mac上创建的。解决此问题最简单,最安全的方法是在Excel中打开文档,将日期格式转换为yyyy-mm-dd,然后将文件另存为CSV,然后加载到R中。
或者,您可以使用left
命令进行调查,其中原点是列开始计算天数的日期。这会变得混乱,所以我会坚持我的第一种方法。