RMySQL и data.frame: NA введены путем принуждения к целочисленному диапазону - PullRequest
0 голосов
/ 19 октября 2018

Я вытаскиваю данные из базы данных MySQL.Данные имеют структуру с плавающей точкой в ​​MySQL, но я получаю следующую ошибку при загрузке их во фреймы данных: «NA, введенные путем принуждения в целочисленный диапазон»

Вот функция MySQL:

##
## MySQL function
##
library(RMySQL)
rozDB <- function(q,type) {
  mysql_conn <- dbConnect(
    MySQL(), 
    user="", 
    password="", 
    dbname="", 
    host="")

  if(type == "select") {
    query <- dbSendQuery(mysql_conn, q)
    result <- fetch(query, n = Inf)
    check <- dbHasCompleted(query)
  }

  if(type == "insert") {
    query <- dbSendQuery(mysql_conn, q)
    result <- "Complete"
  }

  dbClearResult(query)
  dbDisconnect(mysql_conn)

  return(result)
}

и вызов данных:

###
### Build condition map and number of sessions
###

conditions <- c()
query1 <- paste0("SELECT notebook_condition conditions, COUNT(notebook_condition) count FROM key_map GROUP BY notebook_condition;")
conditions <- rozDB(query1, "select")


### 
### Get 1 day of 1 condition
###

selectedCondition <- conditions[3,]

for(i in 1:selectedCondition[1,2]){
  query3 <- paste0("SELECT kx,ky,kz FROM dataread3 WHERE `datetime` BETWEEN (SELECT `start_time` FROM key_map WHERE `cond` = '",selectedCondition[1,1],"' LIMIT ",i,",1) AND (SELECT `end_time` FROM key_map WHERE `cond` = '",selectedCondition[1,1],"' LIMIT ",i,",1);")
  print(query3)
  data <- rozDB(query3,"select")
}
...