Wczytywanie pliku CSV do tabeli
Świetnie sobie do tej pory radzisz z wstawianiem danych do tabel! Teraz nauczysz się, jak wczytać zawartość pliku CSV do tabeli.
Jednym ze sposobów jest czytanie pliku CSV wiersz po wierszu, tworzenie słownika z każdego wiersza, a następnie użycie insert(), tak jak w poprzednim ćwiczeniu.
Istnieje jednak szybsza metoda z użyciem biblioteki pandas. Możesz wczytać plik CSV do DataFrame za pomocą funkcji read_csv() (ta funkcja powinna być ci znana, ale możesz uruchomić help(pd.read_csv) w konsoli, żeby odświeżyć pamięć!). Następnie wywołaj metodę .to_sql() (dokumentacja) na DataFrame, aby załadować dane do tabeli SQL w bazie danych. Kolumny DataFrame powinny odpowiadać kolumnom tabeli SQL.
Metoda .to_sql() ma wiele parametrów, ale w tym ćwiczeniu użyjemy następujących:
name– nazwa tabeli SQL (jako ciąg znaków).con– połączenie z bazą danych, które zostanie użyte do przesłania danych.if_exists– określa zachowanie, gdy tabela już istnieje w bazie danych; możliwe wartości to"fail","replace"i"append".index(TruelubFalse) – określa, czy indeks DataFrame ma być zapisany jako kolumna.
W tym ćwiczeniu prześlesz dane zawarte w pliku census.csv do istniejącej tabeli "census". Połączenie connection z bazą danych zostało już dla ciebie utworzone.
To ćwiczenie jest częścią kursu
Wprowadzenie do baz danych w Pythonie
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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']