R将文本强制转换为数字
R coercing text to numeric
我正在 R 中导入一个 excel 文件。该文件包含两个日期列。在 excel 中,这些格式为日期 (dd-mm-yyyy)。
在 R 中导入文件时,我收到以下警告消息:
In read_fun(path = enc2native(normalizePath(path)), sheet_i = sheet, :
Coercing text to numeric in D1497 / R1497C4: '0.0000'
值分别为 42710、42678 等。
我需要将列用作日期。
我尝试使用 as.Date()
、mdy()
之类的命令,但结果是,这些值随后被 NA 替换。
从包 tidyxl 中,我尝试了 is_date_format 但我得到了 FALSE。
你能帮帮我吗?你有什么建议吗?
非常感谢
PS:这里是 excel 中两列的一些值:
from_unixtime('%d/%m/%Y') from_unixtime('%d/%m/%Y')
06/12/2016 06/12/2018
04/11/2016 08/09/2017
04/11/2016 08/09/2017
01/12/2016 08/09/2017
15/02/2017 08/09/2017
在 R 中,日期变量存储为数字向量。所以 R 使用一些原始日期,如 01.01.1900
(dmy) 并根据数字向日期添加天数。一个简单的例子:数字 1
将是 02.01.1900
,因为这是起点 01.01.1900
之后的 1
天。例如,参见 here。
你可以试试上面提到的来源。那将是:
dates <- as.Date(your_vector_with_numbers, origin= "1900-01-01")
但我实际上更喜欢 Grada Gukovic 可能暗示的解决方案,我会首先尝试正确处理日期。为了帮助您,我们需要知道您如何加载数据。
我正在 R 中导入一个 excel 文件。该文件包含两个日期列。在 excel 中,这些格式为日期 (dd-mm-yyyy)。
在 R 中导入文件时,我收到以下警告消息:
In read_fun(path = enc2native(normalizePath(path)), sheet_i = sheet, :
Coercing text to numeric in D1497 / R1497C4: '0.0000'
值分别为 42710、42678 等。
我需要将列用作日期。
我尝试使用 as.Date()
、mdy()
之类的命令,但结果是,这些值随后被 NA 替换。
从包 tidyxl 中,我尝试了 is_date_format 但我得到了 FALSE。
你能帮帮我吗?你有什么建议吗?
非常感谢
PS:这里是 excel 中两列的一些值:
from_unixtime('%d/%m/%Y') from_unixtime('%d/%m/%Y')
06/12/2016 06/12/2018
04/11/2016 08/09/2017
04/11/2016 08/09/2017
01/12/2016 08/09/2017
15/02/2017 08/09/2017
在 R 中,日期变量存储为数字向量。所以 R 使用一些原始日期,如 01.01.1900
(dmy) 并根据数字向日期添加天数。一个简单的例子:数字 1
将是 02.01.1900
,因为这是起点 01.01.1900
之后的 1
天。例如,参见 here。
你可以试试上面提到的来源。那将是:
dates <- as.Date(your_vector_with_numbers, origin= "1900-01-01")
但我实际上更喜欢 Grada Gukovic 可能暗示的解决方案,我会首先尝试正确处理日期。为了帮助您,我们需要知道您如何加载数据。