如何从SQLite导入14位整数列到R中

时间:2014-07-31 00:07:11

标签: sql r sqlite r-dbi

我有一个SQLite表,其中包含自epoch以来以毫秒为单位的DATETIME列。这是一个14位整数。我使用以下

将表导入R中
  require(DBI)
  con <- dbConnect("SQLite", dbname = database)
  query <- dbSendQuery(con, paste("SELECT * FROM ", table, ";", sep="")) 
  result <- fetch(query, n = -1, encoding="utf-8")
  dbClearResult(query)
  dbDisconnect(con)
  return(result)

然而我的列被导入为32位整数列(最多10位数),带来了恶劣的后果。

如何指定列的目标文件类型?

1 个答案:

答案 0 :(得分:0)

您应该尝试将其转换为浮点数(在可能除以1e3之后),其中R将读为numeric

然后,您可以通过as.POSIXct()将数值转换为R中的标准日期时间。

如果您可以考虑替代方案,PostgreSQL的RPostgreSQL接口将透明地处理SQL日期时间到R Datetime; RMySQL没有。