Kom igångKom igång gratis

Läsa in en CSV-fil i en tabell

Du har gjort ett bra jobb hittills med att infoga data i tabeller! Nu ska du lära dig hur man läser in innehållet från en CSV-fil i en tabell.

Ett sätt att göra det är att läsa CSV-filen rad för rad, skapa ett lexikon från varje rad och sedan använda insert(), precis som du gjorde i föregående övning.

Men det finns ett snabbare sätt med hjälp av pandas. Du kan läsa in en CSV-fil i en DataFrame med funktionen read_csv() (den här funktionen bör vara bekant för dig, men du kan köra help(pd.read_csv) i konsolen om du vill fräscha upp minnet!). Därefter kan du anropa metoden .to_sql() (docs) på DataFrame:en för att läsa in den i en SQL-tabell i en databas. Kolumnerna i DataFrame:en ska matcha kolumnerna i SQL-tabellen.

.to_sql() har många parametrar, men i den här övningen använder vi följande:

  • name är namnet på SQL-tabellen (som en sträng).
  • con är anslutningen till databasen som du använder för att ladda upp data.
  • if_exists anger hur metoden ska bete sig om tabellen redan finns i databasen. Möjliga värden är "fail", "replace" och "append".
  • index (True eller False) anger om DataFrame:ens index ska skrivas som en kolumn.

I den här övningen laddar du upp data från filen census.csv till en befintlig tabell "census". connection till databasen har redan skapats åt dig.

Den här övningen är en del av kursen

Introduktion till databaser i Python

Visa kurs

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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']
Redigera och kör kod