Вывод результатов SQL в функции в R-фрейм данных - PullRequest
0 голосов
/ 24 апреля 2019

У меня есть работающая функция R, которая запрашивает базу данных сервера и возвращает результаты, как и ожидалось, однако она просто выводит результат на консоль, и я хочу сохранить результат как объект данных.

Я пыталсякод ниже

params <- function(
  BEG = '201801',
  END = '201802') {


  con <- dbConnect(odbc::odbc(), dsn = DSN)

   data <- odbc::dbSendQuery(con,  " SELECT A BUNCH OF DATA 
                      FROM some_tables where everything is what I want")

  odbc::dbBind(data, list(BEG, END))
  odbc::dbFetch(data) -> test
  er_vists <- as.data.frame(return(test))
}

params()

Все работает отлично, я просто не могу понять, как сохранить результаты в dataframe.Это должно происходить вне функции?Мы будем благодарны за любую помощь или ссылку на возможные решения.

1 Ответ

3 голосов
/ 24 апреля 2019

Привет, насколько я вижу, ваша функция работает правильно.

Просто измените последнюю строку в вашей функции и сохраните вывод в переменную, подобную этой:

params <- function(BEG = '201801', END = '201802') {

  con <- dbConnect(odbc::odbc(), dsn = DSN)

  data <- odbc::dbSendQuery(con,  " SELECT A BUNCH OF DATA 
                            FROM some_tables where everything is what I want")

  odbc::dbBind(data, list(BEG, END))
  odbc::dbFetch(data) -> test
  return(as.data.frame(test))
}

mydata <- params()
mydata


mydata <- params()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...