Carregando um CSV em uma tabela
Você tem mandado muito bem ao inserir dados em tabelas! Agora, vai aprender a carregar o conteúdo de um arquivo CSV para uma tabela.
Uma forma de fazer isso é ler o arquivo CSV linha a linha, criar um dicionário para cada linha e então usar insert(), como você fez no exercício anterior.
Mas há uma forma mais rápida usando pandas. Você pode ler um arquivo CSV em um DataFrame com a função read_csv() (essa função deve ser familiar para você, mas pode executar help(pd.read_csv) no console para relembrar!). Depois, é só chamar o método .to_sql() (docs) no DataFrame para carregá-lo em uma tabela SQL em um banco de dados. As colunas do DataFrame devem corresponder às colunas da tabela SQL.
.to_sql() tem muitos parâmetros, mas neste exercício usaremos os seguintes:
nameé o nome da tabela SQL (uma string).coné a conexão com o banco de dados que você usará para enviar os dados.if_existsespecifica como agir se a tabela já existir no banco; os valores possíveis são"fail","replace"e"append".index(TrueouFalse) define se o índice do DataFrame deve ser gravado como uma coluna.
Neste exercício, você vai enviar os dados do arquivo census.csv para a tabela existente "census". A connection com o banco de dados já foi criada para você.
Este exercício faz parte do curso
Introdução a Bancos de Dados em Python
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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']