Zacznij terazZacznij za darmo

Obliczanie procentowego udziału populacji według płci i stanu

W tym ćwiczeniu napiszesz zapytanie wyznaczające, jaki procent populacji w roku 2000 stanowiły kobiety. Wyniki pogrupujesz według stanu.

To ćwiczenie jest częścią kursu

Wprowadzenie do baz danych w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Zaimportuj case, cast i Float z sqlalchemy.
  • Zdefiniuj instrukcję wybierającą state oraz procentowy udział kobiet w roku 2000.
    • Wewnątrz func.sum() użyj case(), aby wybrać kobiety (na podstawie kolumny sex) z pop2000. Pamiętaj, aby podać else_=0, gdy wartość sex nie wynosi 'F'.
    • Aby obliczyć procent, podziel liczbę kobiet w roku 2000 przez całkowitą populację w roku 2000. Rzutuj mianownik – census.columns.pop2000 – na typ Float przed pomnożeniem przez 100.
  • Pogrupuj zapytanie według stanu (state).
  • Wykonaj zapytanie i zapisz wynik jako results.
  • Wyświetl state i percent_female dla każdego rekordu. Ta część kodu jest już gotowa – prześlij odpowiedź, aby zobaczyć wynik.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# import case, cast and Float from sqlalchemy
from sqlalchemy import ____, ____, ____

# Build a query to calculate the percentage of women in 2000: stmt
stmt = select([____,
    (func.sum(
        ____([
            (____ == 'F', ____)
        ], else_=0)) /
     cast(func.sum(____), ____) * 100).label('percent_female')
])

# Group By state
stmt = stmt.group_by(____)

# Execute the query and store the results: results
results = connection.execute(____).fetchall()

# Print the percentage
for result in results:
    print(result.state, result.percent_female)
Edytuj i uruchom kod