Преобразование списка (извлеченного из базы данных MySQL) в фрейм данных занимает много времени - PullRequest
0 голосов
/ 02 ноября 2018

Я пытаюсь получить фрейм данных из базы данных mysql.

my_db=src_mysql(dbname='****',
                host='****'
                ,port=****,user='****',password='****')

Из этой базы данных (которая отображается как список 2 в глобальной среде) я хочу извлечь таблицу.

w = src_tbls(my_db)[1]

Но приведенная выше команда возвращает мне список. Я действительно нуждался в кадре данных. Теперь преобразование этого списка в датафрейм занимает много времени.

Может кто-нибудь предложить мне способ прямого извлечения кадра данных из базы данных и сокращения общего времени выполнения кода.

1 Ответ

0 голосов
/ 02 ноября 2018

У меня нет опыта работы с src_mysql(), но вы можете попробовать пакет RODBC.

Это должно дать вам таблицу данных вашей таблицы, и это может быть быстрее, если учесть, что ваш оператор SQL не медленный:

library(RODBC)
channel <- odbcConnect("your dsn as character string", 
                       uid="****", # Username         
                       pwd="****",     
                       believeNRows=FALSE)
w <- sqlQuery(channel, "SELECT * FROM YOUR_TABLE")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...