Как преобразовать SQL-запросы в DataFrame в Pandas

Чтобы преобразовать результат SQL-запроса во фрейм данных pandas, вы можете использовать функцию read_sql_query() из pandas.

Функция read_sql_query() возвращает DataFrame, соответствующий результирующему набору строки запроса. При необходимости укажите параметр index_col, чтобы использовать один из столбцов в качестве индекса; в противном случае будет использоваться целочисленный индекс по умолчанию.

Шаги по преобразованию SQL в DataFrame в Pandas

Для этого вам необходимо установить соединение с вашей базой данных, используя такую библиотеку, как sqlite3, MySQLdb или psycopg2, в зависимости от типа базы данных, с которой вы работаете.

Шаг 1: создайте базу данных MySQL и таблицу

Есть много способов сделать это, но мы остановимся на самом коротком. Я использую сервер MAMP, поэтому там есть phpmyadmin. Теперь по умолчанию уже создан один пользователь с именем root.

Итак, имя пользователя и пароль для этого пользователя — root и root. Я уже создал базу данных с именем laravel7crud и таблицу под названием coronas и вставил две строки.

Моя финальная таблица выглядит следующим образом.

Создать базу данных MySQL и таблицу

Теперь мы прочитаем запрос SELECT, который извлекает все две строки, и преобразуем эти данные SQL в DataFrame.

Шаг 2: импортируйте Pandas и pymysql

Мы используем пакет pymysql для подключения Python к базе данных MySQL. Итак, вам нужно установить пакет pymysql.

Также необходимо установить пакет Pandas. Если вы не установили его, введите следующую команду.

Моя версия по умолчанию — Python 3.8. Итак, в приведенной выше команде я использую python3.

Теперь создайте файл программирования Python с именем app.py и импортируйте пакеты.

Шаг 3: подключите Python к MySQL с помощью connect()

PyMySQL — это клиентская библиотека MySQL на чистом Python, основанная на PEP 249. Большинство общедоступных API-интерфейсов совместимы с mysqlclient и MySQLdb. Кроме того, PyMySQL работает с MySQL 5.5+ и MariaDB 5.5+.

Функция pymysql.connect() принимает следующие четыре параметра.

  1. Hostname
  2. Username
  3. Password
  4. Database

См. следующий код.

Шаг 4: прочтите SQL-запрос

Функция pd.read_sql_query() принимает параметр SQL Query и объект подключения. В нашем случае это оператор SQL SELECT и объект dbcon.

Шаг 5: преобразуйте переменную в DataFrame, используя pd.DataFrame()

Pandas DataFrame — это двумерные, изменяемые по размеру, потенциально гетерогенные табличные данные. Структура данных также содержит помеченные оси (строки и столбцы). Арифметические операции выравниваются по меткам строк и столбцов.

DataFrame принимает два параметра:

  1. SQL Query Data
  2. Columns: мы назвали их так же, как имена столбцов таблицы SQL.

Затем мы напечатали DataFrame и его тип данных.

Итак, наш окончательный код выглядит так, как показано ниже.

Выход

Из вывода видно, что мы успешно преобразовали SQL в Pandas DataFrame.

Оцените статью

Автор статей и разработчик, делюсь знаниями.

Программирование на Python