Загрузка CSV-файла в таблицу
Вы отлично справились с вставкой данных в таблицы! Теперь давайте разберёмся, как загрузить содержимое CSV-файла в таблицу.
Один из способов — читать CSV-файл построчно, формировать из каждой строки словарь и использовать insert(), как вы делали в предыдущем упражнении.
Однако с помощью pandas это можно сделать быстрее. Функция read_csv() позволяет загрузить CSV-файл в DataFrame (она вам уже знакома, но при необходимости можно запустить help(pd.read_csv) в консоли, чтобы освежить память!). Затем достаточно вызвать метод .to_sql() (документация) на DataFrame, чтобы загрузить данные в SQL-таблицу базы данных. Столбцы DataFrame должны совпадать со столбцами SQL-таблицы.
Метод .to_sql() принимает множество параметров, но в этом упражнении мы воспользуемся следующими:
name— название SQL-таблицы (в виде строки).con— соединение с базой данных, которое будет использоваться для загрузки данных.if_exists— определяет поведение в случае, если таблица уже существует в базе данных; возможные значения:"fail","replace"и"append".index(TrueилиFalse) — указывает, нужно ли записывать индекс DataFrame как отдельный столбец.
В этом упражнении вы загрузите данные из файла census.csv в существующую таблицу "census". Соединение connection с базой данных уже создано для вас.
Это упражнение является частью курса
Введение в базы данных на Python
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# import pandas
import pandas as pd
# read census.csv into a DataFrame : census_df
census_df = pd.___(___, ___=___)
# rename the columns of the census DataFrame
census_df.columns = [___, ___, ___, 'pop2000', 'pop2008']