【问题标题】:character string is not in a standard unambiguous format字符串不是标准的明确格式
【发布时间】:2015-05-07 15:22:51
【问题描述】:

我有一个带有一些值的数据框 (df3)。

这些值之一是 daedlines。

这个值的数据如下:

deadline
1419397140
1418994978
1419984000
1418702400

他们是几天,我想用这个来转换:

df3$deadline <- as.POSIXct(df3$deadline, origin="1970-01-01")

一般来说,它适用于其他文件中的其他数据框。

但是,它给了我这个错误:

Error in as.POSIXlt.character(as.character(x), ...) : 
  character string is not in a standard unambiguous format

我该如何解决?

【问题讨论】:

  • 您的数据不是数字,而是可能的因素。这可能是数据导入过程中应该解决的问题。

标签: r


【解决方案1】:

可能是您有一个字符或因子,并且它需要一个用于从 unix 时间转换的数字向量:

as.POSIXct(as.numeric(as.character(df3$deadline)),origin="1970-01-01")

【讨论】:

    【解决方案2】:

    作为未来调试的建议,您可以使用

    检查您的参数类型
    class(df3$deadline) 
    

    并确保将正确的类型传递给 as.POSIXlt()。

    从 asPOSIX*() 的帮助菜单中:

    字符输入首先转换为类 '"POSIXlt"' 'strptime':数字输入首先转换为'"POSIXct"'。任何 需要在两个日期时间类之间进行的转换 需要时区:从 '"POSIXlt"' 到 '"POSIXct"' 的转换 将验证所选时区的时间。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-08-29
      • 2015-01-27
      • 2018-11-04
      • 2016-12-02
      • 1970-01-01
      • 2020-03-03
      • 2021-12-30
      • 2014-05-05
      相关资源
      最近更新 更多