Dojíždění

Analýza dat amerického sčítání lidu v Pythonu

Lee Hachadoorian

Asst. Professor of Instruction, Temple University

Tabulky dojíždění

Témata dojíždění

  • Způsob dopravy (auto, MHD atd.)
  • Doba cestování
  • Čas odjezdu/příjezdu do práce

Geografie dojíždění

  • Bydliště: kde lidé bydlí
  • Pracoviště: kde lidé pracují; lze využít k určení počtu pracujících v okrese, sčítacím obvodu atd.
Analýza dat amerického sčítání lidu v Pythonu

Mýtné za vjezd do centra New Yorku

  • Probíhá debata v NYC (začátek roku 2019)
  • Předchozí pokus selhal (2007)
  • Obavy z nákladů pro nízkopříjmové a středněpříjmové domácnosti

Letecký snímek aut a taxíků na ulici v New Yorku.

1 Foto: Brian Jeffery Beggerly (CC BY 2.0)
Analýza dat amerického sčítání lidu v Pythonu

Tabulka B08519: Způsob dopravy do práce podle výdělku pracovníků za posledních 12 měsíců (v dolarech upravených o inflaci k roku 2017) pro geografii pracoviště

Celkem
    $1 až $9 999 nebo ztráta
    $10 000 až $14 999
    $15 000 až $24 999
    $25 000 až $34 999
    $35 000 až $49 999
    $50 000 až $64 999
    $65 000 až $74 999
    $75 000 a více
Auto, nákladní auto nebo dodávka – sám/sama
    <opakovat příjmové kategorie>
Auto, nákladní auto nebo dodávka – spolujízda
    <opakovat příjmové kategorie>
Hromadná doprava (bez taxislužby)
    <opakovat příjmové kategorie>
atd...
Analýza dat amerického sčítání lidu v Pythonu

Odpověď API

print(r.json())
[['B08519_011E', 'B08519_012E', 'B08519_013E', 'B08519_014E', 'B08519_015E',
  'B08519_016E', 'B08519_017E', 'B08519_018E', 'B08519_020E', 'B08519_021E', 
  ... 
  'B08519_061E', 'B08519_062E', 'B08519_063E', 'state', 'county'], 
 ['10927', '9172', '19659', '22110', '32287', 
  '32977', '15693', '106972', '3663', '2518', 
  ...
  '7457', '2664', '20684', '36', '061']]
Analýza dat amerického sčítání lidu v Pythonu

Přetvoření dat

# Read data row into list
data_row = r.json()[1][:-2]

# Break data row into list of lists iter_len = 8 data = [data_row[i:i+iter_len] for i in range(0, len(data_row), iter_len)]
print(data)
[['10927', '9172', '19659', '22110', '32287', '32977', '15693', '106972'], 
['3663', '2518', '5484', '5625', '8028', '7990', '3369', '22958'], 
['139358', '97178', '200514', '184510', '255491', '240973', '116673', '700808'], 
['16743', '9117', '15900', '13710', '17442', '20206', '10370', '85879'], ...]
Analýza dat amerického sčítání lidu v Pythonu

Vytvoření DataFrame

# Define row names and column names
modes = ["drove_alone", "carpooled", "public", "walked", "taxi", 
         "worked_at_home"]

incomes = ["0k", "10k", "15k", "25k", "35k", "50k", "65k", "75k"]
# Create DataFrame manhattan = pd.DataFrame(data=data, index=modes, columns=incomes) manhattan = manhattan.astype(int)
Analýza dat amerického sčítání lidu v Pythonu

Vytvoření DataFrame

print(manhattan)
                    0k    10k     15k   ...       50k     65k     75k
drove_alone      10716   8965   19294   ...     31502   15519  104078
carpooled         3740   2451    5852   ...      7994    3438   22625
public          140957  99474  197241   ...    235158  111959  654800
walked           16795   9045   15451   ...     20704   10663   83681
taxi              3201   2209    4515   ...      6551    3029   35572
worked_at_home    6854   3885    5489   ...      7776    2809   19598

[6 rows x 8 columns]
Analýza dat amerického sčítání lidu v Pythonu

Vytvoření heatmapy

# Create heatmap of commuters by mode by income
sns.heatmap(manhattan, annot=manhattan // 1000, fmt="d", cmap="YlGnBu")

Heatmapa zobrazující způsoby dojíždění v řádcích a příjmové kategorie ve sloupcích, obarvené podle počtu dojíždějících. Řádek hromadné dopravy je tmavší a buňka hromadné dopravy s příjmy nad 75 000 $ je nejtmavší.

Analýza dat amerického sčítání lidu v Pythonu

Lass uns üben!

Analýza dat amerického sčítání lidu v Pythonu

Preparing Video For Download...