Pandas i pierwsze zapytanie SQL!
W tym ćwiczeniu wykorzystasz możliwości biblioteki pandas, aby zapisać wyniki zapytania SQL bezpośrednio do DataFrame – w jednej linii kodu Pythona!
Na początku zaimportujesz pandas i utworzysz silnik SQLite dla bazy 'Chinook.sqlite'. Następnie wykonasz zapytanie do bazy danych, aby pobrać wszystkie rekordy z tabeli Album.
Przypomnij sobie, że aby wybrać wszystkie rekordy z tabeli Orders w bazie danych Northwind, Hugo wykonał następujące polecenie:
df = pd.read_sql_query("SELECT * FROM Orders", engine)
To ćwiczenie jest częścią kursu
Wprowadzenie do importowania danych w Pythonie
Instrukcje do ćwiczenia
- Zaimportuj pakiet
pandasz aliasempd. - Za pomocą funkcji
create_engine()utwórz silnik dla bazy SQLiteChinook.sqlitei przypisz go do zmiennejengine. - Użyj funkcji
read_sql_query()z bibliotekipandas, aby przypisać do zmiennejdfDataFrame z wynikami następującego zapytania: wybierz wszystkie rekordy z tabeliAlbum. - Pozostała część kodu jest już gotowa – służy do sprawdzenia, czy DataFrame utworzony tą metodą jest identyczny z tym, który powstał za pomocą poprzedniej metody.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Import packages
from sqlalchemy import create_engine
import ____ as ____
# Create engine: engine
# Execute query and store records in DataFrame: df
df = pd.read_sql_query(____, ____)
# Print head of DataFrame
print(df.head())
# Open engine in context manager and store query result in df1
with engine.connect() as con:
rs = con.execute("SELECT * FROM Album")
df1 = pd.DataFrame(rs.fetchall())
df1.columns = rs.keys()
# Confirm that both methods yield the same result
print(df.equals(df1))