Geospatial Data Science in Python
  • Syllabus
  • Schedule
    • Section 401
    • Section 402
  • Content
  • Assignments
    • Overview
    • Section 401
    • Section 402
  • Resources
  • GitHub
  • Canvas
  • Ed Discussion

Week 7B
Getting Data, Part 2: Working with APIs

  • Section 401
  • Wednesday, October 18, 2023

Week #7 Agenda

Last time:

  • Introduction to APIs
  • Natural language processing via Philly’s 311 API
    • Word frequencies

Today:

  • Natural language processing via Philly’s 311 API
    • Sentiment analysis
  • Pulling census data and shape files via the Census API
# Data analysis
import geopandas as gpd
import numpy as np
import pandas as pd

# APIs
import requests

# Plotting
import seaborn as sns
from matplotlib import pyplot as plt
import holoviews as hv
import hvplot.pandas
pd.options.display.max_columns = 999
pd.options.display.max_colwidth = None

Part 1: Picking up where we left off

Natural Language Processing and the 311 Request API

Today, we’ll continue our analysis of 311 request descriptions queried through the API for the Philly 311 system, available at: https://iframe.publicstuff.com/#?client_id=242

We’ll focus on sentiment analysis today.

Let’s load the data from the 311 API first:

# Store the data we request
data = []

# Total number of pages
total_pages = 3

# Loop over each page
for page_num in range(1, total_pages + 1):
    # Print out the page number
    print(f"Getting data for page #{page_num}...")

    # Make the request
    r = requests.get(
        "https://vc0.publicstuff.com/api/2.0/requests_list",
        params={
            "client_id": 242,  # Unique identifier for Philadelphia
            "page": page_num,  # What page of data to pull
            "limit": 200,  # How many rows per page
        },
    )

    # Get the json
    d = r.json()

    # Add the new data to our list and save
    data = data + [r["request"] for r in d["response"]["requests"]]

# Create a dataframe
data = pd.DataFrame(data)
Getting data for page #1...
Getting data for page #2...
Getting data for page #3...
len(data)
600
data.head()
primary_attachment id image_thumbnail title description status address location zipcode foreign_id date_created count_comments count_followers count_supporters lat lon user_follows user_comments user_request rank user
0 {'id': 4618963, 'extension': 'jpg', 'content_type': 'image/jpeg', 'url': 'https://d17aqltn7cihbm.cloudfront.net/uploads/d4f9babbe2a35148e1999e683af928e3', 'versions': {'small': 'https://d17aqltn7cihbm.cloudfront.net/uploads/small_d4f9babbe2a35148e1999e683af928e3', 'medium': 'https://d17aqltn7cihbm.cloudfront.net/uploads/medium_d4f9babbe2a35148e1999e683af928e3', 'large': 'https://d17aqltn7cihbm.cloudfront.net/uploads/large_d4f9babbe2a35148e1999e683af928e3'}} 14500909 https://d17aqltn7cihbm.cloudfront.net/uploads/small_d4f9babbe2a35148e1999e683af928e3 Graffiti Removal On the southwest corner of the intersection of S. 46th Street and Woodland Avenue. submitted 4600 Woodland Ave, Philadelphia, PA 19143, USA None 16306396 1697501960 0 0 0 39.944178 -75.209649 0 0 0 1 WalkAbout
1 {'id': 4618960, 'extension': 'jpg', 'content_type': 'image/jpeg', 'url': 'https://d17aqltn7cihbm.cloudfront.net/uploads/6e5e286bde3cdf1ec670d0efaa95d98f', 'versions': {'small': 'https://d17aqltn7cihbm.cloudfront.net/uploads/small_6e5e286bde3cdf1ec670d0efaa95d98f', 'medium': 'https://d17aqltn7cihbm.cloudfront.net/uploads/medium_6e5e286bde3cdf1ec670d0efaa95d98f', 'large': 'https://d17aqltn7cihbm.cloudfront.net/uploads/large_6e5e286bde3cdf1ec670d0efaa95d98f'}} 14500903 https://d17aqltn7cihbm.cloudfront.net/uploads/small_6e5e286bde3cdf1ec670d0efaa95d98f Graffiti Removal On the 'No Dumping' street sign on the south side of Cedar Avenue about 11 steps west of S. 46th Street. Next to the tiny park. submitted 4600 Cedar Ave, Philadelphia, PA 19143, USA None 16306393 1697501884 0 0 0 39.949022 -75.215039 0 0 0 1 WalkAbout
2 {'id': 4618941, 'extension': 'jpg', 'content_type': 'image/jpeg', 'url': 'https://d17aqltn7cihbm.cloudfront.net/uploads/a7e674332af320c3766d7448d1b0bee1', 'versions': {'small': 'https://d17aqltn7cihbm.cloudfront.net/uploads/small_a7e674332af320c3766d7448d1b0bee1', 'medium': 'https://d17aqltn7cihbm.cloudfront.net/uploads/medium_a7e674332af320c3766d7448d1b0bee1', 'large': 'https://d17aqltn7cihbm.cloudfront.net/uploads/large_a7e674332af320c3766d7448d1b0bee1'}} 14500867 https://d17aqltn7cihbm.cloudfront.net/uploads/small_a7e674332af320c3766d7448d1b0bee1 Illegal Dumping Apartment complex is dumping trash on our street again! Please help or tell me the proper channels I need to take. Thank you! submitted 6400 N Smedley St,Philadelphia, PA 19126 Philadelphia, Pennsylvania 19126 16306384 1697501287 0 0 0 40.051265 -75.146395 0 0 0 1 Maxdawn
3 NaN 14500812 Traffic Sign Complaint People speed up the street like they’re all 95 it needs to have street cushions put in or speed bumps whatever you wanna call submitted 3532 Mercer St,Philadelphia, PA 19134 Philadelphia, Pennsylvania 19134 16306373 1697500549 0 0 0 39.989440 -75.095472 0 0 0 1 Lisa BUCHER
4 {'id': 4618920, 'extension': 'jpeg', 'content_type': 'image/jpeg', 'url': 'https://d17aqltn7cihbm.cloudfront.net/uploads/021404250e358776466e2a1eed0b37b7', 'versions': {'small': 'https://d17aqltn7cihbm.cloudfront.net/uploads/small_021404250e358776466e2a1eed0b37b7', 'medium': 'https://d17aqltn7cihbm.cloudfront.net/uploads/medium_021404250e358776466e2a1eed0b37b7', 'large': 'https://d17aqltn7cihbm.cloudfront.net/uploads/large_021404250e358776466e2a1eed0b37b7'}} 14500796 https://d17aqltn7cihbm.cloudfront.net/uploads/small_021404250e358776466e2a1eed0b37b7 Abandoned Automobile This vehicle has been parked on the 5300 block of Sycamore Street. The car appears to be stolen and parts from the vehicle were removed such as Steering wheel – and other items submitted 5414 B St, Philadelphia, PA 19120, USA None 16306368 1697500317 0 0 0 40.032428 -75.118470 0 0 0 1

Let’s remove rows with missing descriptions and get our list of descriptions:

# Remove rows with missing descriptions
data = data.dropna(subset=["description"])
data_final = data.loc[data["description"] != ""]

# Strip out spaces and convert to a list
descriptions = data_final["description"].str.strip().tolist()

And then run our steps to clean up our text data:

  1. Break strings into words
  2. Remove capitalization
  3. Remove stop words
  4. Remove punctuation

1. Break strings into words

Use the .split() command to break a string into words by splitting on spaces.

descriptions_words = [desc.split() for desc in descriptions]

This is a list of lists, e.g., the first element is a list of words. Let’s flatten this into a list of just words:

descriptions_words_flat = []

for list_of_words in descriptions_words:
    for word in list_of_words:
        descriptions_words_flat.append(word)

2. Convert all words to lower case

Use .lower() makes all words lower cased

descriptions_words_lower = [word.lower() for word in descriptions_words_flat]

3. Remove stop words

Common words that do not carry much significance and are often ignored in text analysis.

import nltk

nltk.download("stopwords");
[nltk_data] Downloading package stopwords to /Users/nhand/nltk_data...
[nltk_data]   Package stopwords is already up-to-date!

Get the list of common stop words:

stop_words = list(set(nltk.corpus.stopwords.words("english")))

stop_words[:10]
['after',
 'on',
 'not',
 'any',
 'hers',
 'your',
 "you've",
 'theirs',
 'has',
 "hadn't"]
descriptions_no_stop = []

for word in descriptions_words_lower:
    if word not in stop_words:
        descriptions_no_stop.append(word)
len(descriptions_no_stop)
5418

4. Remove punctuation

Get the list of common punctuation:

import string
punctuation = list(string.punctuation)
punctuation[:5]
['!', '"', '#', '$', '%']

Remove punctuation from words:

descriptions_final = []

# Loop over all words
for word in descriptions_no_stop:
    
    # Remove any punctuation from the words
    for p in punctuation:
        word = word.replace(p, "")
        
    # Save it if the string is not empty
    if word != "":
        descriptions_final.append(word)

Convert to a Dataframe with one column:

words = pd.DataFrame({"words": descriptions_final})
words.head()
words
0 southwest
1 corner
2 intersection
3 s
4 46th

Use case #1: calculating word frequencies

An example of text mining

Use a pandas groupby and sort to put in descending order:

N = words.groupby("words", as_index=False).size().sort_values("size", ascending=False, ignore_index=True)

The top 15 words by frequency:

top15 = N.head(15)

top15
words size
0 street 141
1 trash 113
2 side 64
3 block 41
4 sidewalk 39
5 vehicle 39
6 please 38
7 property 35
8 lot 35
9 car 33
10 corner 33
11 graffiti 30
12 front 30
13 months 30
14 picked 29

Plot the frequencies

Use seaborn to plot our DataFrame of word counts…

fig, ax = plt.subplots(figsize=(8, 8))

# Plot horizontal bar graph
sns.barplot(
    y="words",
    x="size",
    data=top15,
    ax=ax,
    color="#cc3000",
    saturation=1.0,
)

ax.set_title("Most Common Words Found in 311 Requests", fontsize=16);

Takeaway: Philly cares about trash! They don’t call it Filthadelphia for nothing…

Now, let’s visualize with a word cloud

Use the wordcloud package to make a simple word cloud of the word frequencies.

Note

We’ll need to pass a single string to the WordCloud function. We can combine a list of strings by using the join function and specifying the join separator to be a space (” “)

> strings = ["this", "is", "an", "example"]

> combined_string = " ".join(strings)

> combined_string
'this is an example'
from wordcloud import WordCloud
# Create a word cloud object
wc = WordCloud(
    background_color="black", max_words=100, width=1000, height=500, colormap="tab20c"
)

# NEW: Create a single string from all of our descriptions
text = " ".join(descriptions_final)

# Generate the image
img = wc.generate(text)

# The matplotlib fig/ax
fig, ax = plt.subplots()

# Show the image
ax.imshow(img, interpolation="bilinear")

# Format
ax.set_axis_off()
plt.show();

Use case #2: sentiment analysis

The goal of a sentiment analysis is to determine the attitude or emotional state of the person who wrote a piece of text. It is often used by brands to evaluate public opinion about a product.

The goal

Determine the “sentiment” of every word in the English language

The hard way

Train a machine learning algorithm to classify words as positive vs. negative, given an input training sample of words.

The easy way

Luckily, this is a very common task in NLP and there are several packages available that have done the hard work for you.

They provide out-of-the-box sentiment analysis using pre-trained machine learning algorithms.

The textblob package

First, let’s try out a package called textblob. Textblob can calculate the “polarity” of words, from negative -1 to postive +1.

It’s algorithm is not particularly sophisticated (as we will see). It was trained on IMDB movie reviews and uses a dictionary mapping of adjectives to sentiment values. So, it knows about a set of adjectives and an approximate polarity for those words.

Let’s try it out on the words from the 311 requests

import textblob

First, copy our “words” dataframe and drop any duplicate words. We’ll try to calculate the sentiment for each word.

sentiment = words.copy().drop_duplicates(subset=['words'])
sentiment.head()
words
0 southwest
1 corner
2 intersection
3 s
4 46th

Now, create our “text blob” objects:

blobs = [textblob.TextBlob(word) for word in sentiment['words']]

Now use the “.polarity” attribute to calculate the sentiment:

sentiment["polarity"] = [blob.polarity for blob in blobs]
sentiment.head(10)
words polarity
0 southwest 0.0
1 corner 0.0
2 intersection 0.0
3 s 0.0
4 46th 0.0
5 street 0.0
6 woodland 0.0
7 avenue 0.0
8 no 0.0
9 dumping 0.0

Most of these words are zero!

(sentiment['polarity'] == 0).sum()
1689
len(sentiment)
1827

Why did this happen?

Because the universe of words that TextBlob knows about is pretty small! Mostly confined to common adjectives/adverbs that appeared in its IMDB review dataset.

Let’s take a look at the words with nonzero polarity:

sentiment_nonzero = sentiment.query("polarity != 0")

What are the top 15 most positive words?

sentiment_nonzero.sort_values("polarity", ascending=False, ignore_index=True).head(15)
words polarity
0 incredibly 0.900000
1 fly 0.800000
2 experienced 0.800000
3 great 0.800000
4 pleasant 0.733333
5 bright 0.700000
6 amazing 0.600000
7 hazardous 0.600000
8 warm 0.600000
9 apt 0.600000
10 better 0.500000
11 top 0.500000
12 safe 0.500000
13 surely 0.500000
14 mostly 0.500000

What are the top 15 most negative words?

sentiment_nonzero.sort_values("polarity", ascending=True, ignore_index=True).head(15)
words polarity
0 outrageous -1.0
1 horrible -1.0
2 terrible -1.0
3 hate -0.8
4 bad -0.7
5 dangerous -0.6
6 dirty -0.6
7 afraid -0.6
8 frightening -0.5
9 illegal -0.5
10 illegally -0.5
11 uncomfortable -0.5
12 random -0.5
13 unable -0.5
14 wrong -0.5

What about a histogram of the sentiment?

# create a figure and axes
fig, ax = plt.subplots(figsize=(10, 6))

# histogram
ax.hist(sentiment_nonzero["polarity"], bins="auto")
ax.axvline(x=0, c="k", lw=2)

# format
ax.set_xlabel("Polarity")
ax.set_title("Polarity of 311 Request Words", fontsize=16);

Hmm…this is surprising! There are many more positive words than I would have guessed!

What could be going on?

Most of the 311 requests are in fact very negative. They are mostly complaints, after all.

In the previous analysis, TextBlob only knows the sentiment for a small subset of the words. This is makes it difficult to produce a comprehensive sentiment for the entirety of the text for each 311 request. This is difficult because context really matters! Let’s see an example:

As you can see in the below example, the negation is not picked up by the algorithm:

textblob.TextBlob("Philly 311 is the best").polarity
1.0
textblob.TextBlob("Philly 311 is NOT the best").polarity
1.0

Both are marked as positive! (because of the word “best”)

Can we do better? YES!

The transformers package

The Hugging Face transformers package (documentation) provides access to state-of-the-art, pre-trained machine learning algorithms for natural language processing.

It provides access to more sophisticated machine learning models that are capable of measuring the sentiment of a piece of text using the full context of the words.

We can use the transformers pipeline() function to load and run our pre-trained models

from transformers import pipeline

Positive/Negative sentiment analysis

We’ll start with a version of the DistilBERT model that has been fine-tuned on the Stanford Sentiment Treebank dataset.

For an input series of text, this model will predict the POSITIVE / NEGATIVE labels with associated confidence scores. It will tell us how likely it thinks the text is positive or negative.

Tip

For more info on sentiment analysis with the transformers package, check out this tutorial.

# The name of the model we are using
model = "distilbert-base-uncased-finetuned-sst-2-english"

# Initialize our sentiment analyzer
sentiment_classifier = pipeline(
    task="sentiment-analysis",  # The task we are doing
    model=model,  # The specific model name
    top_k=None,  # Predict all labels, not just top ones
    tokenizer=model,  # Tokenize inputs using model tokenizer
    truncation=True,  # Truncate text if we need to
)
No CUDA runtime is found, using CUDA_HOME='/usr/local/cuda'
Xformers is not installed correctly. If you want to use memory_efficient_attention to accelerate training use the following command to install Xformers
pip install xformers.

Now, let’s pass our original list of request descriptions to the classifier.

Note

We don’t need to do any text pre-processing here! We’ll just pass in the raw text, so no need to remove stop words, punctuation, etc.

We’re now running a much more sophisticated model, so it will take more time to execute! This will likely take 2-3 minutes to run…

%%time

scores = sentiment_classifier(descriptions)
CPU times: user 23min 10s, sys: 10.5 s, total: 23min 20s
Wall time: 2min 51s

What does the response structure look like?

For each description, we get a dictionary containing the label (POSITIVE or NEGATIVE) and the associated score:

scores[:10]
[[{'label': 'POSITIVE', 'score': 0.9495417475700378},
  {'label': 'NEGATIVE', 'score': 0.050458285957574844}],
 [{'label': 'POSITIVE', 'score': 0.508097231388092},
  {'label': 'NEGATIVE', 'score': 0.49190279841423035}],
 [{'label': 'NEGATIVE', 'score': 0.6410784721374512},
  {'label': 'POSITIVE', 'score': 0.35892152786254883}],
 [{'label': 'NEGATIVE', 'score': 0.9990324974060059},
  {'label': 'POSITIVE', 'score': 0.000967523199506104}],
 [{'label': 'NEGATIVE', 'score': 0.9988860487937927},
  {'label': 'POSITIVE', 'score': 0.0011139643611386418}],
 [{'label': 'NEGATIVE', 'score': 0.9983736276626587},
  {'label': 'POSITIVE', 'score': 0.001626323675736785}],
 [{'label': 'NEGATIVE', 'score': 0.8497042059898376},
  {'label': 'POSITIVE', 'score': 0.15029579401016235}],
 [{'label': 'NEGATIVE', 'score': 0.8308085799217224},
  {'label': 'POSITIVE', 'score': 0.1691913902759552}],
 [{'label': 'POSITIVE', 'score': 0.9935035109519958},
  {'label': 'NEGATIVE', 'score': 0.006496530957520008}],
 [{'label': 'NEGATIVE', 'score': 0.9966918230056763},
  {'label': 'POSITIVE', 'score': 0.003308200277388096}]]

Let’s unpack this to a more useful format:

yes_no = pd.DataFrame([{d["label"]: d["score"] for d in dd} for dd in scores]).assign(
    text=descriptions
)
yes_no.head()
POSITIVE NEGATIVE text
0 0.949542 0.050458 On the southwest corner of the intersection of S. 46th Street and Woodland Avenue.
1 0.508097 0.491903 On the 'No Dumping' street sign on the south side of Cedar Avenue about 11 steps west of S. 46th Street. Next to the tiny park.
2 0.358922 0.641078 Apartment complex is dumping trash on our street again! Please help or tell me the proper channels I need to take. Thank you!
3 0.000968 0.999032 People speed up the street like they’re all 95 it needs to have street cushions put in or speed bumps whatever you wanna call
4 0.001114 0.998886 This vehicle has been parked on the 5300 block of Sycamore Street. The car appears to be stolen and parts from the vehicle were removed such as Steering wheel – and other items

Note: The scores summed across both labels will sum up to 1.

Total sentiment calculation: We can calculate the overall score by multiplying the value for each label, e.g., (POSITIVE = +1 and NEGATIVE = -1) by the confidence score for each label. This gives an overall sentiment estimate for each piece of text:

yes_no["sentiment"] = (yes_no["POSITIVE"] * +1) + (yes_no["NEGATIVE"] * -1)
yes_no.head()
POSITIVE NEGATIVE text sentiment
0 0.949542 0.050458 On the southwest corner of the intersection of S. 46th Street and Woodland Avenue. 0.899083
1 0.508097 0.491903 On the 'No Dumping' street sign on the south side of Cedar Avenue about 11 steps west of S. 46th Street. Next to the tiny park. 0.016194
2 0.358922 0.641078 Apartment complex is dumping trash on our street again! Please help or tell me the proper channels I need to take. Thank you! -0.282157
3 0.000968 0.999032 People speed up the street like they’re all 95 it needs to have street cushions put in or speed bumps whatever you wanna call -0.998065
4 0.001114 0.998886 This vehicle has been parked on the 5300 block of Sycamore Street. The car appears to be stolen and parts from the vehicle were removed such as Steering wheel – and other items -0.997772

Question: Are most of the reviews positive or negative?

Let’s take a look at the mean and median:

yes_no['sentiment'].mean()
-0.708985571766335
yes_no['sentiment'].median()
-0.9924230165779591

Ah! By far, most of these are negative!

Philadelphians using the 311 system appear to be very upset.

Let’s take a look at the overall histogram of sentiment too:

# Create a figure and axes
fig, ax = plt.subplots(figsize=(10, 6))

# Histogram
ax.hist(yes_no['sentiment'], bins="auto")
ax.axvline(x=0, c="k", lw=2)

# Format
ax.set_xlabel("Polarity")
ax.set_title("Polarity of 311 Requests", fontsize=16);

Whoa! Very negative sentiment!

This makes much more sense than our earlier results with the Textblob package.

Let’s look at the 10 requests with the lowest sentiment scores:

yes_no.sort_values("sentiment", ascending=True).head(10)
POSITIVE NEGATIVE text sentiment
388 0.000206 0.999794 Expired tags and appears abandoned -0.999587
89 0.000217 0.999783 Sewer is letting out really bad smell and is full of garbage. -0.999565
74 0.000240 0.999760 sidewalk collapse -0.999520
153 0.000252 0.999748 The park lights that go on when it is dark out have been out non-functioning for over a month now. It is incredibly dark in the evening and is not safe. -0.999496
399 0.000255 0.999745 The 2nd floor of the 1155 S 9th Street moved out and they dumped their stuff on the sidewalk. -0.999489
46 0.000256 0.999744 Dangerous trash items dumped in the funeral home parking lot that was never removed properly from the past construction site at 625 Byberry Rd phila PA 19116 -0.999489
81 0.000264 0.999736 The trash on this block is unreal. No one bags anything up, so it blows all over. It's bad every day of the week, not just trash day. This block needs to be given real trash cans. -0.999471
227 0.000268 0.999731 These chairs have been sitting here for months, on City (PHA) Property. They say "Mummers Museum" on them, but they're just rusting and looking like trash in our neighborhood. -0.999463
130 0.000270 0.999730 Dumped boat alongside the 6400 Cottage St along Roosevelt Playground. It is filled with trash -0.999460
49 0.000272 0.999728 Trash has been on sidewalk for nearly a month. City Trash truck will not pick it up. -0.999455

And the 10 requests with the highest sentiment:

yes_no.sort_values("sentiment", ascending=False).head(10)
POSITIVE NEGATIVE text sentiment
314 0.999784 0.000216 Graffiti and sticker on sign. Please and thank you! 0.999567
323 0.999711 0.000289 Graffiti on sign. Please and thank you! 0.999422
324 0.999711 0.000289 Graffiti on sign. Please and thank you! 0.999422
154 0.999605 0.000395 Graffiti on entire side of building on 1850 Hope. Thank you! 0.999210
33 0.999430 0.000570 People speed up this street and we have children on this street 0.998860
223 0.998891 0.001109 The Calder Gardens construction site has a bright light on all night every night that shines across the entire neighborhood. I understand they need to light up the construction area but surely it doesn’t need to shine upwards into all of our bedrooms at night? It’s much brighter than any other light in the area. 0.997782
129 0.998437 0.001563 Overflowing into my property 0.996873
212 0.998410 0.001590 center of Cianfrani Park 0.996820
348 0.998193 0.001807 Everyone trash was picked up except mine, and my trash was at curbside on time. I live at the corner house it’s not hard to miss 0.996387
51 0.997944 0.002056 hey there is still an encampment here. growing bigger every day. 0.995888

Takeaway

The model is still clearly focusing on some crucial words (please, thank you = “positive”) but overall, doing a much, much better job overall of understanding the full context of the text.

Emotion sentiment analysis

The transformers package also includes pre-trained models that can predict emotion labels.

As an example, let’s try out this version of the DistilBERT model that can predict the following labels for a string of text: anger, fear, sadness, joy, love, and surprise.

# The model
model = "bhadresh-savani/distilbert-base-uncased-emotion"

# Initialize our sentiment analyzer
emotion_classifier = pipeline(
    task="text-classification",  # The task we are doing
    model=model,  # The specific model name
    top_k=None,  # Predict all labels, not just top ones
    tokenizer=model,  # Tokenize inputs using model tokenizer
    truncation=True,  # Truncate text if we need to
)

Classify the 311 descriptions using our emotions model. Once again, this will likely take 2-3 minutes to run:

%%time 

emotion_scores = emotion_classifier(descriptions)
CPU times: user 23min 21s, sys: 8.8 s, total: 23min 30s
Wall time: 2min 48s
emotion_scores[0]
[{'label': 'fear', 'score': 0.6695271134376526},
 {'label': 'anger', 'score': 0.19726096093654633},
 {'label': 'joy', 'score': 0.09402022510766983},
 {'label': 'sadness', 'score': 0.01936410740017891},
 {'label': 'surprise', 'score': 0.012043606489896774},
 {'label': 'love', 'score': 0.0077839684672653675}]

Unpack the label/score combos into a DataFrame:

emotion = pd.DataFrame(
    [{d["label"]: d["score"] for d in dd} for dd in emotion_scores]
).assign(text=descriptions)
emotion.head()
fear anger joy sadness surprise love text
0 0.669527 0.197261 0.094020 0.019364 0.012044 0.007784 On the southwest corner of the intersection of S. 46th Street and Woodland Avenue.
1 0.859705 0.120488 0.010728 0.003260 0.004663 0.001155 On the 'No Dumping' street sign on the south side of Cedar Avenue about 11 steps west of S. 46th Street. Next to the tiny park.
2 0.000414 0.002554 0.989055 0.001997 0.000243 0.005738 Apartment complex is dumping trash on our street again! Please help or tell me the proper channels I need to take. Thank you!
3 0.184317 0.698201 0.062046 0.050890 0.002694 0.001853 People speed up the street like they’re all 95 it needs to have street cushions put in or speed bumps whatever you wanna call
4 0.740593 0.133473 0.011053 0.108852 0.004859 0.001170 This vehicle has been parked on the 5300 block of Sycamore Street. The car appears to be stolen and parts from the vehicle were removed such as Steering wheel – and other items

Now, let’s calculate the predicted label for each text. This is the label with the highest score for each text.

emotion_labels = ["anger", "fear", "sadness", "joy", "surprise", "love"]

Use the idxmax() function to find the column with the maximum value for each row:

emotion[emotion_labels].idxmax(axis=1)
0       fear
1       fear
2        joy
3      anger
4       fear
       ...  
462    anger
463    anger
464    anger
465     fear
466     fear
Length: 467, dtype: object
emotion['prediction'] = emotion[emotion_labels].idxmax(axis=1)
emotion.head()
fear anger joy sadness surprise love text prediction
0 0.669527 0.197261 0.094020 0.019364 0.012044 0.007784 On the southwest corner of the intersection of S. 46th Street and Woodland Avenue. fear
1 0.859705 0.120488 0.010728 0.003260 0.004663 0.001155 On the 'No Dumping' street sign on the south side of Cedar Avenue about 11 steps west of S. 46th Street. Next to the tiny park. fear
2 0.000414 0.002554 0.989055 0.001997 0.000243 0.005738 Apartment complex is dumping trash on our street again! Please help or tell me the proper channels I need to take. Thank you! joy
3 0.184317 0.698201 0.062046 0.050890 0.002694 0.001853 People speed up the street like they’re all 95 it needs to have street cushions put in or speed bumps whatever you wanna call anger
4 0.740593 0.133473 0.011053 0.108852 0.004859 0.001170 This vehicle has been parked on the 5300 block of Sycamore Street. The car appears to be stolen and parts from the vehicle were removed such as Steering wheel – and other items fear

What’s the breakdown across the predicted labels?

emotion.groupby("prediction").size().plot(kind='barh');

Takeaway: Most descriptions are classified as “fear” or “anger”

How about visualizing the full distribution of scores across all emotions?

Let’s get a tidy version for analysis:

emotion_tidy = emotion.melt(
    id_vars=["text"], value_vars=emotion_labels, var_name="emotion", value_name="score"
)
emotion_tidy.head()
text emotion score
0 On the southwest corner of the intersection of S. 46th Street and Woodland Avenue. anger 0.197261
1 On the 'No Dumping' street sign on the south side of Cedar Avenue about 11 steps west of S. 46th Street. Next to the tiny park. anger 0.120488
2 Apartment complex is dumping trash on our street again! Please help or tell me the proper channels I need to take. Thank you! anger 0.002554
3 People speed up the street like they’re all 95 it needs to have street cushions put in or speed bumps whatever you wanna call anger 0.698201
4 This vehicle has been parked on the 5300 block of Sycamore Street. The car appears to be stolen and parts from the vehicle were removed such as Steering wheel – and other items anger 0.133473

Make a box plot of the distribution across all emotions:

sns.catplot(data=emotion_tidy, x="emotion", y="score", kind="box");
/Users/nhand/mambaforge/envs/musa-550-fall-2023/lib/python3.10/site-packages/seaborn/axisgrid.py:118: UserWarning: The figure layout has changed to tight
  self._figure.tight_layout(*args, **kwargs)

Takeaway:

Fear and anger! For emotions other than anger/fear, confidence scores are concentrated near zero, indicating that the text likely does not contain those emotions.

Let’s do a deeper dive on some of the emotions:

Anger

angry_requests = emotion.query("anger > 0.8").sort_values("anger", ascending=False)
len(angry_requests)
80
angry_requests.head(20)
fear anger joy sadness surprise love text prediction
246 0.001147 0.997735 0.000239 0.000609 0.000134 0.000136 The are rocks and other debris items that have been picked out of the trash blocking the entry and exit way to the driveway. The owner also puts some type of white chemicals on it and it has caused damage to my vehicle numerous times. There are dirty trash bags hanging along the fence area. If a resident ask her to move it she becomes very irate and combative. anger
160 0.000773 0.996903 0.000356 0.001579 0.000128 0.000261 Hate speech on side of building on 13th and spruce anger
132 0.001949 0.996713 0.000410 0.000497 0.000167 0.000264 Tree coming down. Very dangerous anger
53 0.003206 0.995312 0.000421 0.000688 0.000160 0.000212 Tree coming down on Proctor Rd. Very dangerous anger
312 0.002940 0.995312 0.000595 0.000742 0.000163 0.000248 It is extremely hard to see at night especially since there is not stop sign on the road leading up to it. We hear cars hit it often and it is loud, sometimes flat tires happen and it’s dangerous for electric bikes and scooters. anger
255 0.003880 0.994278 0.000740 0.000621 0.000198 0.000283 Very bad hole whole tire goes in. You can’t see it which makes it even more dangerous. It’s on the drivers side of the street. Right before the bridge. Thanks anger
64 0.004393 0.993969 0.000550 0.000664 0.000175 0.000248 street light is out creating a dangerous area with crime in the neighborhood. anger
61 0.004737 0.993821 0.000505 0.000447 0.000204 0.000286 View from our roof deck: looks like the back wall of their house has fallen down and into the surrounding yards and areas. Very dangerous. Homeowner attempting to put the pieces of wall back together himself. Someone go help that man! anger
409 0.007373 0.990195 0.000709 0.001310 0.000198 0.000215 Manton St is already a narrow street, the pothole makes trash collection difficult because the trash truck has to reverse and maneuver thru cars that are already parked on the curb, very dangerous anger
46 0.009776 0.987523 0.000854 0.001446 0.000197 0.000205 Dangerous trash items dumped in the funeral home parking lot that was never removed properly from the past construction site at 625 Byberry Rd phila PA 19116 anger
256 0.010180 0.986226 0.001814 0.001106 0.000227 0.000447 The light pole has been out for almost 2 weeks. Please is very dark at night and in the morning. The other street light is all the way at the end of the block. With the light pole light off is making the block very dark and dangerous. Please can you send someone to fix it as soon as possible. Thank you. Maria Torres 4002 Gilham st. anger
156 0.006585 0.985632 0.000858 0.006336 0.000319 0.000270 people are dumping all kinds of trash outside our business anger
189 0.009659 0.979324 0.003577 0.006531 0.000243 0.000665 Hate messaging on electrical box facing street. Should be prioritized anger
459 0.002977 0.977072 0.001047 0.018333 0.000232 0.000340 My trash collection day is Thursday but due to the holiday, it was Friday. I put my trash out on Friday morning. I return home in the evening and my trash was not picked up. All other trash on my block was picked up except mine. It was one bag, bagged correctly and placed on the sidewalk \n\nI don’t understand why everyone else’s bags were picked up and mine was not. \n\nThis has happened several times this year. It’s unacceptable. I’ve never experienced my trash being left on the sidewalk. There’s a breakdown somewhere and I want answers \n\nI pay taxes like everyone else and I expect the services available to me. \n\nI would like to speak with a supervisor regarding this matter. This is happening one too many times anger
42 0.015931 0.976699 0.002130 0.004426 0.000417 0.000396 This has been open and tearing up the bottom of cars for over six weeks. Fix it or put a steel plate over it. anger
417 0.024150 0.971062 0.001833 0.002366 0.000305 0.000285 The hole is in front of a dangerous vacant house. It was fixed only about 2 months ago and has reopened and growing. anger
352 0.015262 0.968072 0.005341 0.010229 0.000613 0.000484 long this back park there trash that have been out there for the past two months anger
213 0.025253 0.966334 0.004253 0.003255 0.000459 0.000447 In the resistance 653 E Thayer st there was a fire last night which is resistance I do not pass inspection and they are renting it anger
293 0.016661 0.961744 0.002837 0.017831 0.000588 0.000340 Trash has not been picked up anger
272 0.012939 0.960171 0.009602 0.015907 0.000799 0.000582 The property is a triplex that doubles as a airbnb. They put garbage bags out everyday not on trash day. anger

Fear

And the most fearful:

fearful_requests = emotion.query("fear > 0.8").sort_values("fear", ascending=False)
len(fearful_requests)
76
fearful_requests.head(20)
fear anger joy sadness surprise love text prediction
38 0.997108 0.000887 0.000408 0.000987 0.000443 0.000168 I reside next door to this vacant property. The entire back of the house is falling down. There are several squirrels, possums and raccoons hanging out of the house. There is debris falling into my backyard and my children are afraid to play back there. There are now magets falling through my sons room because I believe there is something dead in his walls. Please contact me at 267-904-1753, thank you fear
261 0.992042 0.004499 0.000603 0.002248 0.000411 0.000196 Open flames are being lit underneath 95 every night, which is a major fire hazard. Area has become an illegal dumping site filled with mounds of trash. Unsafe conditions with discarded needles, human waste, tents, shopping carts. Residents are afraid to walk by due to unsanitary conditions and aggressive nature of camp dwellers. fear
203 0.991208 0.002228 0.000442 0.000383 0.005459 0.000279 The cave-in is getting larger as time goes by. When trucks or buses go by, our whole house shakes, it is frightening. fear
277 0.990393 0.004574 0.000967 0.003393 0.000470 0.000203 2840 N Judson St porch is danger of collapse, held up by a board. ppl in the home dumping construction trash on the corner. Neighbors homes next door is in danger when the porch collapse too. couldn't load pic. fear
110 0.988391 0.003221 0.001139 0.005514 0.001511 0.000224 Missing street name sign for Cypress Street, located on the SW corner at South 9th Street. fear
163 0.984954 0.007672 0.000770 0.005747 0.000573 0.000284 An tenant on the second floor Clarence Young Apt 2 C has an bed bugs infestation, an refuse examination will has the other tenants, an great inconvenience we can’t used our laundry room or community room, we’re restricted from meeting in other areas, while this individual is still walking around, management can’t seem to handle the matter efficiently, his presence is everybody extremely uncomfortable , this contribute to his mental health fear
340 0.982761 0.004817 0.001064 0.008939 0.002184 0.000234 Wrecked vehicle parked blocking crosswalk and too close to fire hydrant. Possibility of being stolen and abandoned. fear
72 0.981407 0.010381 0.001214 0.005825 0.000919 0.000253 Property is unsealed. People are entering frequently. fear
320 0.968219 0.008872 0.001683 0.019192 0.001595 0.000439 the fence fell on me while i was walking resulting in minor injuries. fear
230 0.966225 0.024689 0.004373 0.003271 0.001061 0.000381 Bulb has been out since last winter. Has been reported previously and never fixed, Not saf to walk on strett as park is very dark. fear
292 0.965217 0.017342 0.005371 0.010168 0.001536 0.000367 It has been in this spot without moving for approximately 6 months. fear
361 0.964056 0.014632 0.002278 0.016545 0.002014 0.000475 Car been parked in front of house for six months. Expired inspection stickers, two flat tires, damage to the drivers side. fear
434 0.961617 0.024714 0.001440 0.010248 0.001597 0.000384 Abandon house fell on electric wires in the back. fear
201 0.955390 0.038087 0.002316 0.002883 0.000855 0.000470 Van with people sleeping in the park on the play ground. fear
414 0.953619 0.030410 0.001820 0.012103 0.001673 0.000377 stop sign knocked down by construction vehicle fear
35 0.953109 0.020269 0.001983 0.022810 0.001401 0.000428 cement around inlet is cracked. Danger to pedestrians fear
171 0.951624 0.026008 0.012353 0.006975 0.002333 0.000708 Pedestrian crossing sign OUT and NOT FUNCTIONING at the SW corner of 30th and Market Street. fear
140 0.950077 0.022618 0.002368 0.023805 0.000685 0.000447 Trees planting into the ground and moving toward street. Unsafe fear
97 0.948384 0.044143 0.001950 0.004101 0.001067 0.000355 Home under construction. Not secured. Squatters have broken into the building. fear
69 0.945735 0.039572 0.002658 0.010071 0.001614 0.000350 Car has been here for over two weeks in front of my house. Large accident 2 weeks ago every car was towed but this one. It’s also sticking out onto the street. fear

Takeaway:

Overall, the algorithm is doing a pretty good job picking up the emotion and sentiment in the requests.

One potential use case for a model like this: prioritizing responses. For example:

  • You might want to respond more quickly to those that are classified as the most fearful, given that those situations might be the most dangerous.
  • Or, requests that are classified as the angriest might warrant a closer follow-up from a city representative, since many of these requests are likely repeated requests from frustrated residents.

But, once again, we see the limitations of sentiment analysis as text with words like “thank you” and “please” get classified as positive (“joy”):

joyful_requests = emotion.query("joy > 0.8").sort_values("joy", ascending=False)

Not that many requests!

len(joyful_requests)
24
joyful_requests.head(20)
fear anger joy sadness surprise love text prediction
218 0.000202 0.000358 0.998168 0.000476 0.000334 0.000462 vehicle hasnt ran well over a year inspection sticker in front appears to have been alter it read 11/2020 now you only see the 11 this vehicle is just taking up some valuable spot for another car that runs SO MANY VIOLATION IN THE 15TH DISTRICT THAT JUST GETTING THEY ARE SO MANY CARS IN AREA THAT ARE NOT RUNNING THEY ARE IILEGAL taking up so many spots joy
314 0.000329 0.001318 0.990678 0.000946 0.000373 0.006355 Graffiti and sticker on sign. Please and thank you! joy
154 0.000567 0.002886 0.989135 0.002578 0.000688 0.004146 Graffiti on entire side of building on 1850 Hope. Thank you! joy
2 0.000414 0.002554 0.989055 0.001997 0.000243 0.005738 Apartment complex is dumping trash on our street again! Please help or tell me the proper channels I need to take. Thank you! joy
323 0.000729 0.003696 0.988631 0.001794 0.000529 0.004622 Graffiti on sign. Please and thank you! joy
324 0.000729 0.003696 0.988631 0.001794 0.000529 0.004622 Graffiti on sign. Please and thank you! joy
456 0.000768 0.004943 0.988528 0.004332 0.000329 0.001101 Hi i so a resident from 633,634,643 E Thayer st and the people from the garage on F st and Ontario st. And the beauty salon through in trash next to the electricity pole on F st. & Ontario st and they know that the pole have a sign of fine they don’t put a address in the bags because they know they can get a fine joy
460 0.000843 0.005435 0.987868 0.004306 0.000416 0.001132 No recycle pickup yesterday for the odd numbers side of the block. All recycle bins are at the curbside waiting. Please pick up as a continued effort to keep our City clean. joy
397 0.000218 0.000780 0.976723 0.000954 0.000370 0.020955 The trash was not removed,the lid was off so someone obviously looked at it but decided not to put it in the truck. I've put the lid back in and would appreciate it being taken. Thanks joy
223 0.006227 0.015431 0.973137 0.003297 0.001020 0.000887 The Calder Gardens construction site has a bright light on all night every night that shines across the entire neighborhood. I understand they need to light up the construction area but surely it doesn’t need to shine upwards into all of our bedrooms at night? It’s much brighter than any other light in the area. joy
437 0.000971 0.014033 0.965937 0.003748 0.000639 0.014671 There's a tag in red spray paint on the retaining wall for the Betsy Ross Bridge that's by the on-ramp behind the big green sign. \r\nThanks. joy
319 0.001974 0.027491 0.962027 0.006175 0.000655 0.001678 Recycling was never picked up! My entire block still has their Recycling outside. Trash was picked up yesterday, why wasn't the recycling?????? Please pick up Immediately. Thank you! I guess the city doesn't care. Next time I summit a request it won't be to 311 but to City hall. Along with pictures! joy
29 0.008942 0.015654 0.960725 0.003665 0.010158 0.000856 On the metal staircase at the rear of the apartment building. Use alley on the west side of the building to get to the rear of the building. \nGraffiti is at or very near this point:\nHere is a precise what3words address, made of 3 random words. Every 10ft square in the world has its own unique what3words address.\n\nhttps://w3w.co/clap.digs.buzz joy
426 0.005569 0.010426 0.951224 0.015387 0.016442 0.000953 I've been having this problem of getting this area cleaned up for the longest time.I don't understand why those city workers are not doing their jobs. if you don't have adequate people those people need to be replaced. I am going to send this video to the city officials and the News. Amazing, in those white areas there are city workers picking up trash constantly. joy
366 0.038893 0.005748 0.947229 0.005978 0.001100 0.001052 Kids walk through here and I noticed a bunch of little kids trip over the hole. It’s not safe . joy
135 0.002884 0.045254 0.945802 0.003459 0.001008 0.001593 Graffiti on our purple building. I have clear videos of the perpeatror. joy
170 0.007085 0.049680 0.929838 0.005769 0.001051 0.006578 Sink Hole would be the more exact term. Across the SINK HOLE is 6 inches. A straight down depth is 18 inches. A straight across depth of 48 inches or more measured underneath the SINK HOLE by using a broomstick is almost 4 FEET heading back to the center of 33xx Oakmont Street. One Orange Cone has been placed over the SINK HOLE for safety & visibility. Thank you,\nTHE NE_CAPED_CRUSADER\nne_caped_crusader@outlook.com\nJose Williams (Zip Code 19136)\n6th Council District. & 15 Police District.\nPhiladelphia, Pa. 19136 U.S.A. joy
153 0.052773 0.011042 0.922465 0.011364 0.001248 0.001109 The park lights that go on when it is dark out have been out non-functioning for over a month now. It is incredibly dark in the evening and is not safe. joy
431 0.016508 0.077170 0.878651 0.014538 0.001941 0.011193 Graffiti Removal on the Penny-Pack Park Bridge on EAST Bound Welsh Road (Between Rowland Ave & Winchester Ave). 10 Different Pictures attached. Please power wash for removal.\n\nThank you,\nJose Williams (Zip Code 19136)\n"THE NE_CAPED_CRUSADER"\nne_caped_crusader@Outlook.com\nPHILADELPHIA, PA. 19136 U.S.A.\n15th Police District. & 6th Council District. joy
430 0.020282 0.084760 0.873991 0.016648 0.001504 0.002814 The walkway lights in the center of the park just north of and parallel to the 2500 block of Delancey Street have been out all summer. Please fix them!! joy

Sentiment analysis – a helpful, but imperfect analysis tool!

Part 2: The Census API

US Census data is foundational

  • Rich data sets with annual releases
  • Decennial results plus American Community Survey (ACS) results
  • Wide range of topics covered: sex, income, poverty, education, housing

Getting census data (the new way)
census.data.gov

Example: poverty data

Via the API

https://api.census.gov/data/2021/acs/acs1?get=NAME,B17001_002E&for=state:*

  • Base endpoint: https://api.census.gov/data/2021/acs/acs1
  • Request parameters: “get”, “for”

How to find the right variable names?

The census provides web-based documentation:

  • Overview of all data tables: https://api.census.gov/data.html
  • All data tables for 2021: https://api.census.gov/data/2021.html
  • All variables for 2021 ACS 5-year data set: https://api.census.gov/data/2021/acs/acs5/variables.html

A detailed Census API guide

https://www.census.gov/data/developers/guidance/api-user-guide.html

Accessing the API is easier from Python

Several packages provide easier Python interfaces to census data based on the census API.

We’ll focus on cenpy - “Explore and download data from Census APIs” - Documentation - GitHub

Example: the racial “dot” map

Source: Washington Post

Let’s make this for Philadelphia in Python!

# First step: import cenpy
import cenpy

The “explorer” module

Functions to help you explore the Census API from Python

  • cenpy.explorer.available: Returns information about available datasets in Census API
  • cenpy.explorer.explain: Explain a specific Census dataset
  • cenpy.explorer.fips_table: Get a table of FIPS codes for a specific geography

Note: we can change pandas display options to see all rows/columns and large cells

# UNCOMMENT TO SEE ALL ROWS/COLUMNS IN DATAFRAMES
# pd.options.display.max_rows = 9999 
# pd.options.display.max_colwidth = 200

Step 1: Identify what dataset we want

  • Today, we’ll use the 5-year American Community Survey (latest available year: 2021)
  • Other common datasets:
    • 1-year ACS datasets as well (latest available year: 2022)
    • 10-year decennial survey (latest available year: 2020)
available = cenpy.explorer.available()

available.head()
c_isTimeseries c_isMicrodata publisher temporal spatial programCode modified keyword contactPoint distribution description bureauCode accessLevel title c_isAvailable c_isCube c_isAggregate c_dataset vintage
ABSCB2017 NaN NaN U.S. Census Bureau 2017/2017 US 006:007 2020-04-30 00:00:00.0 (census,) {'fn': 'ASE Staff', 'hasEmail': 'mailto:erd.annual.survey.of.entrepreneurs@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2017/abscb', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The Annual Business Survey (ABS) provides information on selected economic and demographic characteristics for businesses and business owners by sex, ethnicity, race, and veteran status. Further, the survey measures research and development (for microbusinesses), new business topics such as innovation and technology, as well as other business characteristics. The U.S. Census Bureau and the National Center conduct the ABS jointly for Science and Engineering Statistics within the National Science Foundation. The ABS replaces the five-year Survey of Business Owners (SBO) for employer businesses, the Annual Survey of Entrepreneurs (ASE), the Business R&D and Innovation for Microbusinesses survey (BRDI-M), and the innovation section of the Business R&D and Innovation Survey (BRDI-S). https://www.census.gov/programs-surveys/abs.html 006:07 public Annual Business Survey: Characteristics of Businesses: 2017 True NaN True (abscb,) 2017.0
ABSCB2018 NaN NaN U.S. Census Bureau 2018/2018 US 006:007 2020-10-26 00:00:00.0 (census,) {'fn': 'ASE Staff', 'hasEmail': 'mailto:Erd.annual.survey.of.entrepreneurs@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2018/abscb', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The Annual Business Survey (ABS) provides information on selected economic and demographic characteristics for businesses and business owners by sex, ethnicity, race, and veteran status. Further, the survey measures research and development (for microbusinesses), new business topics such as innovation and technology, as well as other business characteristics. The U.S. Census Bureau and the National Center conduct the ABS jointly for Science and Engineering Statistics within the National Science Foundation. The ABS replaces the five-year Survey of Business Owners (SBO) for employer businesses, the Annual Survey of Entrepreneurs (ASE), the Business R&D and Innovation for Microbusinesses survey (BRDI-M), and the innovation section of the Business R&D and Innovation Survey (BRDI-S). https://www.census.gov/programs-surveys/abs.html 006:07 public Annual Business Survey: 2018 True NaN True (abscb,) 2018.0
ABSCB2019 NaN NaN U.S. Census Bureau 2019/2019 US 006:007 2021-08-17 00:00:00.0 (census,) {'fn': 'ASE Staff', 'hasEmail': 'mailto:ERD.annual.survey.of.entrepreneurs@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2019/abscb', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The Annual Business Survey (ABS) provides information on selected economic and demographic characteristics for businesses and business owners by sex, ethnicity, race, and veteran status. Further, the survey measures research and development (for microbusinesses), new business topics such as innovation and technology, as well as other business characteristics. The U.S. Census Bureau and the National Center conduct the ABS jointly for Science and Engineering Statistics within the National Science Foundation. The ABS replaces the five-year Survey of Business Owners (SBO) for employer businesses, the Annual Survey of Entrepreneurs (ASE), the Business R&D and Innovation for Microbusinesses survey (BRDI-M), and the innovation section of the Business R&D and Innovation Survey (BRDI-S). https://www.census.gov/programs-surveys/abs.html 006:07 public 2019 Annual Business Survey: Characteristics of Business True NaN True (abscb,) 2019.0
ABSCB2020 NaN NaN U.S. Census Bureau 2020/2020 US 006:007 2022-08-03 00:00:00.0 (census,) {'fn': 'ASE Staff', 'hasEmail': 'mailto:ERD.annual.survey.of.entrepreneurs@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2020/abscb', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The Annual Business Survey (ABS) provides information on selected economic and demographic characteristics for businesses and business owners by sex, ethnicity, race, and veteran status. Further, the survey measures research and development (for microbusinesses), new business topics such as innovation and technology, as well as other business characteristics. The U.S. Census Bureau and the National Center conduct the ABS jointly for Science and Engineering Statistics within the National Science Foundation. The ABS replaces the five-year Survey of Business Owners (SBO) for employer businesses, the Annual Survey of Entrepreneurs (ASE), the Business R&D and Innovation for Microbusinesses survey (BRDI-M), and the innovation section of the Business R&D and Innovation Survey (BRDI-S). https://www.census.gov/programs-surveys/abs.html 006:07 public 2020 Annual Business Survey: Characteristics of Business True NaN True (abscb,) 2020.0
ABSCBO2017 NaN NaN U.S. Census Bureau 2017/2017 US 006:007 2020-04-30 00:00:00.0 (census,) {'fn': 'ASE Staff', 'hasEmail': 'mailto:erd.annual.survey.of.entrepreneurs@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2017/abscbo', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The Annual Business Survey (ABS) provides information on selected economic and demographic characteristics for businesses and business owners by sex, ethnicity, race, and veteran status. Further, the survey measures research and development (for microbusinesses), new business topics such as innovation and technology, as well as other business characteristics. The U.S. Census Bureau and the National Center conduct the ABS jointly for Science and Engineering Statistics within the National Science Foundation. The ABS replaces the five-year Survey of Business Owners (SBO) for employer businesses, the Annual Survey of Entrepreneurs (ASE), the Business R&D and Innovation for Microbusinesses survey (BRDI-M), and the innovation section of the Business R&D and Innovation Survey (BRDI-S). https://www.census.gov/programs-surveys/abs.html 006:07 public Annual Business Survey: Characteristics of Business Owners: 2017 True NaN True (abscbo,) 2017.0

We can use the pandas filter() to search for specific identifiers in the dataframe.

In this case, let’s search for the American Community Survey datasets. We’ll match index labels using regular expressions.

In particular, we’ll search for labels that start with “ACS”. In the language of regular expressions, we’ll use the “^” to mean “match labels that start with”

For more info on regular expressions, the documentation for the re module is a good place to start.

# Return a dataframe of all datasets that start with "ACS"
# Axis=0 means to filter the index labels!
acs = available.filter(regex="^ACS", axis=0)

acs
c_isTimeseries c_isMicrodata publisher temporal spatial programCode modified keyword contactPoint distribution description bureauCode accessLevel title c_isAvailable c_isCube c_isAggregate c_dataset vintage
ACSCD1132011 NaN NaN U.S. Census Bureau 2011/2011 United States 006:004 2014-10-06 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2011/acs1/cd113', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is a nationwide survey designed to provide communities a fresh look at how they are changing. The ACS replaced the decennial census long form in 2010 and thereafter by collecting long form type information throughout the decade rather than only once every 10 years. Questionnaires are mailed to a sample of addresses to obtain information about households -- that is, about each person and the housing unit itself. The American Community Survey produces demographic, social, housing and economic estimates in the form of 1-year, 3-year and 5-year estimates based on population thresholds. The strength of the ACS is in estimating population and housing characteristics. The 3-year data provide key estimates for each of the topic areas covered by the ACS for the nation, all 50 states, the District of Columbia, Puerto Rico, every congressional district, every metropolitan area, and all counties and places with populations of 20,000 or more. Although the ACS produces population, demographic and housing unit estimates,it is the Census Bureau's Population Estimates Program that produces and disseminates the official estimates of the population for the nation, states, counties, cities and towns, and estimates of housing units for states and counties. For 2010 and other decennial census years, the Decennial Census provides the official counts of population and housing units. 006:07 public 2011 American Community Survey 1-Year Profiles for the 113th Congressional Districts True NaN True (acs1, cd113) 2011.0
ACSCD1152015 NaN NaN U.S. Census Bureau 2015/2015 United States 006:004 2017-02-10 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2015/acs1/cd115', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. The 115th Congressional District Data Profiles are available for the nation, all 50 states, the District of Columbia, and Puerto Rico (at large). Data profiles contain broad social, economic, housing, and demographic information. The data are presented as population counts for over 1,000 distinct variables. 006:07 public 2015 American Community Survey 1-Year Data Profile 115th Congressional District True NaN True (acs1, cd115) 2015.0
ACSCP1Y2010 NaN NaN U.S. Census Bureau NaN United States 006:004 2018-09-18 00:00:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2010/acs/acs1/cprofile', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. Much of the ACS data provided on the Census Bureau's Web site are available separately by age group, race, Hispanic origin, and sex. Summary files, Subject tables, Data profiles, and Comparison profiles are available for the nation, all 50 states, the District of Columbia, Puerto Rico, every congressional district, every metropolitan area, and all counties and places with populations of 65,000 or more. Comparison profiles are similar to data profiles but also include comparisons with past-year data. The current year data are compared with each of the last four years of data and include statistical significance testing. There are over 1,000 variables in this dataset. 006:07 public ACS 1-Year Comparison Profiles True True True (acs, acs1, cprofile) 2010.0
ACSCP1Y2011 NaN NaN U.S. Census Bureau NaN United States 006:004 2018-09-18 00:00:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2011/acs/acs1/cprofile', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. Much of the ACS data provided on the Census Bureau's Web site are available separately by age group, race, Hispanic origin, and sex. Summary files, Subject tables, Data profiles, and Comparison profiles are available for the nation, all 50 states, the District of Columbia, Puerto Rico, every congressional district, every metropolitan area, and all counties and places with populations of 65,000 or more. Comparison profiles are similar to data profiles but also include comparisons with past-year data. The current year data are compared with each of the last four years of data and include statistical significance testing. There are over 1,000 variables in this dataset. 006:07 public ACS 1-Year Comparison Profiles True True True (acs, acs1, cprofile) 2011.0
ACSCP1Y2012 NaN NaN U.S. Census Bureau NaN NaN 006:004 2018-07-05 00:00:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2012/acs/acs1/cprofile', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. Much of the ACS data provided on the Census Bureau's Web site are available separately by age group, race, Hispanic origin, and sex. Summary files, Subject tables, Data profiles, and Comparison profiles are available for the nation, all 50 states, the District of Columbia, Puerto Rico, every congressional district, every metropolitan area, and all counties and places with populations of 65,000 or more. Comparison profiles are similar to data profiles but also include comparisons with past-year data. The current year data are compared with each of the last four years of data and include statistical significance testing. There are over 1,000 variables in this dataset. 006:07 public ACS 1-Year Comparison Profiles True True True (acs, acs1, cprofile) 2012.0
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
ACSST5Y2017 NaN NaN U.S. Census Bureau NaN NaN 006:004 2018-10-19 00:00:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2017/acs/acs5/subject', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. The subject tables include the following geographies: nation, all states (including DC and Puerto Rico), all metropolitan areas, all congressional districts, all counties, all places and all tracts. Subject tables provide an overview of the estimates available in a particular topic. The data are presented as both counts and percentages. There are over 66,000 variables in this dataset. 006:07 public ACS 5-Year Subject Tables True True True (acs, acs5, subject) 2017.0
ACSST5Y2018 NaN NaN U.S. Census Bureau NaN NaN 006:004 2019-10-22 15:36:29.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:Acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2018/acs/acs5/subject', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. The subject tables include the following geographies: nation, all states (including DC and Puerto Rico), all metropolitan areas, all congressional districts, all counties, all places and all tracts. Subject tables provide an overview of the estimates available in a particular topic. The data are presented as both counts and percentages. There are over 66,000 variables in this dataset. 006:07 public ACS 5-Year Subject Tables True True True (acs, acs5, subject) 2018.0
ACSST5Y2019 NaN NaN U.S. Census Bureau NaN NaN 006:004 2020-04-03 00:00:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2019/acs/acs5/subject', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. The subject tables include the following geographies: nation, all states (including DC and Puerto Rico), all metropolitan areas, all congressional districts, all counties, all places and all tracts. Subject tables provide an overview of the estimates available in a particular topic. The data are presented as both counts and percentages. There are over 66,000 variables in this dataset. 006:07 public American Community Survey: 5-Year Estimates: Subject Tables 5-Year True True True (acs, acs5, subject) 2019.0
ACSST5Y2020 NaN NaN U.S. Census Bureau 2020/2020 US 006:004 2021-07-13 00:00:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2020/acs/acs5/subject', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. The subject tables include the following geographies: nation, all states (including DC and Puerto Rico), all metropolitan areas, all congressional districts, all counties, all places and all tracts. Subject tables provide an overview of the estimates available in a particular topic. The data are presented as both counts and percentages. There are over 66,000 variables in this dataset. 006:07 public American Community Survey: 5-Year Estimates: Subject Tables 5-Year True True True (acs, acs5, subject) 2020.0
ACSST5Y2021 NaN NaN U.S. Census Bureau 2021/2021 US 006:004 2022-08-08 00:00:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2021/acs/acs5/subject', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. The subject tables include the following geographies: nation, all states (including DC and Puerto Rico), all metropolitan areas, all congressional districts, all counties, all places and all tracts. Subject tables provide an overview of the estimates available in a particular topic. The data are presented as both counts and percentages. There are over 66,000 variables in this dataset. 006:07 public American Community Survey: 5-Year Estimates: Subject Tables 5-Year True True True (acs, acs5, subject) 2021.0

234 rows × 19 columns

Many flavors of ACS datasets are available — we want to use the detailed tables version, specifically the 5-year survey.

The relevant identifiers start with: “ACSDT5Y”.

# Return a dataframe of all datasets that start with "ACSDT5Y"
available.filter(regex="^ACSDT5Y", axis=0)
c_isTimeseries c_isMicrodata publisher temporal spatial programCode modified keyword contactPoint distribution description bureauCode accessLevel title c_isAvailable c_isCube c_isAggregate c_dataset vintage
ACSDT5Y2009 NaN NaN U.S. Census Bureau NaN NaN 006:004 2019-08-27 13:11:18.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2009/acs/acs5', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. Summary files include the following geographies: nation, all states (including DC and Puerto Rico), all metropolitan areas, all congressional districts (114th congress), all counties, all places, and all tracts and block groups. Summary files contain the most detailed cross-tabulations, many of which are published down to block groups. The data are population and housing counts. There are over 64,000 variables in this dataset. 006:07 public American Community Survey: 5-Year Estimates: Detailed Tables 5-Year True True True (acs, acs5) 2009.0
ACSDT5Y2010 NaN NaN U.S. Census Bureau NaN United States 006:004 2018-07-04 00:00:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2010/acs/acs5', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. Summary files include the following geographies: nation, all states (including DC and Puerto Rico), all metropolitan areas, all congressional districts (114th congress), all counties, all places, and all tracts and block groups. Summary files contain the most detailed cross-tabulations, many of which are published down to block groups. The data are population and housing counts. There are over 64,000 variables in this dataset. 006:07 public ACS 5-Year Detailed Tables True True True (acs, acs5) 2010.0
ACSDT5Y2011 NaN NaN U.S. Census Bureau NaN NaN 006:004 2018-07-04 00:00:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2011/acs/acs5', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. Summary files include the following geographies: nation, all states (including DC and Puerto Rico), all metropolitan areas, all congressional districts (116th Congress), all counties, all places, and all tracts and block groups. Summary files contain the most detailed cross-tabulations, many of which are published down to block groups. The data are population and housing counts. There are over 64,000 variables in this dataset. 006:07 public ACS 5-Year Detailed Tables True True True (acs, acs5) 2011.0
ACSDT5Y2012 NaN NaN U.S. Census Bureau NaN NaN 006:004 2018-07-04 00:00:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2012/acs/acs5', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. Summary files include the following geographies: nation, all states (including DC and Puerto Rico), all metropolitan areas, all congressional districts (116th Congress), all counties, all places, and all tracts and block groups. Summary files contain the most detailed cross-tabulations, many of which are published down to block groups. The data are population and housing counts. There are over 64,000 variables in this dataset. 006:07 public ACS 5-Year Detailed Tables True True True (acs, acs5) 2012.0
ACSDT5Y2013 NaN NaN U.S. Census Bureau NaN NaN 006:004 2018-07-04 00:00:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2013/acs/acs5', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. Summary files include the following geographies: nation, all states (including DC and Puerto Rico), all metropolitan areas, all congressional districts (116th Congress), all counties, all places, and all tracts and block groups. Summary files contain the most detailed cross-tabulations, many of which are published down to block groups. The data are population and housing counts. There are over 64,000 variables in this dataset. 006:07 public ACS 5-Year Detailed Tables True True True (acs, acs5) 2013.0
ACSDT5Y2014 NaN NaN U.S. Census Bureau NaN NaN 006:004 2018-07-04 00:00:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2014/acs/acs5', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. Summary files include the following geographies: nation, all states (including DC and Puerto Rico), all metropolitan areas, all congressional districts (116th Congress), all counties, all places, and all tracts and block groups. Summary files contain the most detailed cross-tabulations, many of which are published down to block groups. The data are population and housing counts. There are over 64,000 variables in this dataset. 006:07 public ACS 5-Year Detailed Tables True True True (acs, acs5) 2014.0
ACSDT5Y2015 NaN NaN U.S. Census Bureau NaN NaN 006:004 2018-07-05 00:00:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2015/acs/acs5', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. Summary files include the following geographies: nation, all states (including DC and Puerto Rico), all metropolitan areas, all congressional districts (116th Congress), all counties, all places, and all tracts and block groups. Summary files contain the most detailed cross-tabulations, many of which are published down to block groups. The data are population and housing counts. There are over 64,000 variables in this dataset. 006:07 public ACS 5-Year Detailed Tables True True True (acs, acs5) 2015.0
ACSDT5Y2016 NaN NaN U.S. Census Bureau NaN NaN 006:004 2018-07-05 00:00:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2016/acs/acs5', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. Summary files include the following geographies: nation, all states (including DC and Puerto Rico), all metropolitan areas, all congressional districts (116th Congress), all counties, all places, and all tracts and block groups. Summary files contain the most detailed cross-tabulations, many of which are published down to block groups. The data are population and housing counts. There are over 64,000 variables in this dataset. 006:07 public ACS 5-Year Detailed Tables True True True (acs, acs5) 2016.0
ACSDT5Y2017 NaN NaN U.S. Census Bureau NaN NaN 006:004 2018-08-21 07:11:43.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2017/acs/acs5', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. Summary files include the following geographies: nation, all states (including DC and Puerto Rico), all metropolitan areas, all congressional districts (116th Congress), all counties, all places, and all tracts and block groups. Summary files contain the most detailed cross-tabulations, many of which are published down to block groups. The data are population and housing counts. There are over 64,000 variables in this dataset. 006:07 public ACS 5-Year Detailed Tables True True True (acs, acs5) 2017.0
ACSDT5Y2018 NaN NaN U.S. Census Bureau NaN NaN 006:004 2019-10-22 16:28:02.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:Acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2018/acs/acs5', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. Summary files include the following geographies: nation, all states (including DC and Puerto Rico), all metropolitan areas, all congressional districts (116th Congress), all counties, all places, and all tracts and block groups. Summary files contain the most detailed cross-tabulations, many of which are published down to block groups. The data are population and housing counts. There are over 64,000 variables in this dataset. 006:07 public American Community Survey: 5-Year Estimates: Detailed Tables 5-Year True True True (acs, acs5) 2018.0
ACSDT5Y2019 NaN NaN U.S. Census Bureau NaN NaN 006:004 2020-04-03 00:00:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:Acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2019/acs/acs5', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. Summary files include the following geographies: nation, all states (including DC and Puerto Rico), all metropolitan areas, all congressional districts (116th Congress), all counties, all places, and all tracts and block groups. Summary files contain the most detailed cross-tabulations, many of which are published down to block groups. The data are population and housing counts. There are over 64,000 variables in this dataset. 006:07 public American Community Survey: 5-Year Estimates: Detailed Tables 5-Year True True True (acs, acs5) 2019.0
ACSDT5Y2020 NaN NaN U.S. Census Bureau 2020/2020 US 006:004 2021-07-13 00:00:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2020/acs/acs5', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. Summary files include the following geographies: nation, all states (including DC and Puerto Rico), all metropolitan areas, all congressional districts (117th Congress), all counties, all places, and all tracts and block groups. Summary files contain the most detailed cross-tabulations, many of which are published down to block groups. The data are population and housing counts. There are over 64,000 variables in this dataset. 006:07 public American Community Survey: 5-Year Estimates: Detailed Tables 5-Year True True True (acs, acs5) 2020.0
ACSDT5Y2021 NaN NaN U.S. Census Bureau 2021/2021 US 006:004 2022-08-08 00:00:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2021/acs/acs5', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. Summary files include the following geographies: nation, all states (including DC and Puerto Rico), all metropolitan areas, all congressional districts, all counties, all places, and all tracts and block groups. Summary files contain the most detailed cross-tabulations, many of which are published down to block groups. The data are population and housing counts. There are over 64,000 variables in this dataset. 006:07 public American Community Survey: 5-Year Estimates: Detailed Tables 5-Year True True True (acs, acs5) 2021.0
ACSDT5YAIAN2010 NaN NaN U.S. Census Bureau NaN NaN 006:004 2019-10-24 07:18:57.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2010/acs/acs5/aian', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Indian and Alaska Native (AIAN) tables are released every five years. They are available for selected tribal populations, with more detailed tribal categories compared to those in the Selected Population Tables. 006:07 public American Community Survey: 5-Year Estimates: American Indian and Alaska Native Detailed Tables 5-Year True True True (acs, acs5, aian) 2010.0
ACSDT5YAIAN2015 NaN NaN U.S. Census Bureau NaN NaN 006:004 2020-02-13 00:00:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2015/acs/acs5/aian', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Indian and Alaska Native (AIAN) tables are released every five years. They are available for selected tribal populations, with more detailed tribal categories compared to those in the Selected Population Tables. 006:07 public ACS 5-Year AIAN Detailed Tables True True True (acs, acs5, aian) 2015.0
ACSDT5YAIAN2021 NaN NaN U.S. Census Bureau 2021/2021 US 006:004 2022-11-29 00:00:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2021/acs/acs5/aian', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The American Indian and Alaska Native (AIAN) tables are released every five years. They are available for selected tribal populations, with more detailed tribal categories compared to those in the Selected Population Tables. 006:07 public American Community Survey: 5-Year Estimates: American Indian and Alaska Native Detailed Tables 5-Year True True True (acs, acs5, aian) 2021.0
ACSDT5YSPT2010 NaN NaN U.S. Census Bureau NaN NaN 006:004 2019-10-11 14:16:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2010/acs/acs5/spt', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The Selected Population Tables (SPT) are released every five years. They are available for selected race, Hispanic origin, tribal, and ancestry populations. 006:07 public American Community Survey: 5-Year Estimates: Selected Population Detailed Tables 5-Year True True True (acs, acs5, spt) 2010.0
ACSDT5YSPT2015 NaN NaN U.S. Census Bureau NaN NaN 006:004 2020-02-18 00:00:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2015/acs/acs5/spt', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The Selected Population Tables (SPT) are released every five years. They are available for selected race, Hispanic origin, tribal, and ancestry populations. 006:07 public American Community Survey: 5-Year Estimates: Selected Population Detailed Tables 5-Year True True True (acs, acs5, spt) 2015.0
ACSDT5YSPT2021 NaN NaN U.S. Census Bureau 2021/2021 US 006:004 2022-11-29 00:00:00.0 (census,) {'fn': 'American Community Survey Office', 'hasEmail': 'mailto:acso.users.support@census.gov'} {'@type': 'dcat:Distribution', 'accessURL': 'http://api.census.gov/data/2021/acs/acs5/spt', 'description': 'API endpoint', 'format': 'API', 'mediaType': 'application/json', 'title': 'API endpoint'} The Selected Population Tables (SPT) are released every five years. They are available for selected race, Hispanic origin, tribal, and ancestry populations. 006:07 public American Community Survey: 5-Year Estimates: Selected Population Detailed Tables 5-Year True True True (acs, acs5, spt) 2021.0

Let’s use the latest available 5-year data (2021). We can use the explain() function to print out a description of the dataset:

cenpy.explorer.explain("ACSDT5Y2021")
{'American Community Survey: 5-Year Estimates: Detailed Tables 5-Year': 'The American Community Survey (ACS) is an ongoing survey that provides data every year -- giving communities the current information they need to plan investments and services. The ACS covers a broad range of topics about social, economic, demographic, and housing characteristics of the U.S. population. Summary files include the following geographies: nation, all states (including DC and Puerto Rico), all metropolitan areas, all congressional districts, all counties, all places, and all tracts and block groups. Summary files contain the most detailed cross-tabulations, many of which are published down to block groups. The data are population and housing counts. There are over 64,000 variables in this dataset.'}

Step 2: Initialize the API connection

Use the cenpy.remote.APIConnection object, and pass it the name of the dataset.

acs = cenpy.remote.APIConnection("ACSDT5Y2021")

Step 3: Find the variables we want to load

The .variables attribute stores the available variables (across all Census tables).

We can use the varslike() function to search the variables dataframe (it’s just a simple wrapper around the pandas filter() function).

len(acs.variables)
27927
acs.variables.head(n=10)
label concept predicateType group limit predicateOnly hasGeoCollectionSupport attributes required
for Census API FIPS 'for' clause Census API Geography Specification fips-for N/A 0 True NaN NaN NaN
in Census API FIPS 'in' clause Census API Geography Specification fips-in N/A 0 True NaN NaN NaN
ucgid Uniform Census Geography Identifier clause Census API Geography Specification ucgid N/A 0 True True NaN NaN
B24022_060E Estimate!!Total:!!Female:!!Service occupations:!!Food preparation and serving related occupations SEX BY OCCUPATION AND MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE FULL-TIME, YEAR-ROUND CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER int B24022 0 NaN NaN B24022_060EA,B24022_060M,B24022_060MA NaN
B19001B_014E Estimate!!Total:!!$100,000 to $124,999 HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (BLACK OR AFRICAN AMERICAN ALONE HOUSEHOLDER) int B19001B 0 NaN NaN B19001B_014EA,B19001B_014M,B19001B_014MA NaN
B07007PR_019E Estimate!!Total:!!Moved from different municipio:!!Foreign born:!!Naturalized U.S. citizen GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY CITIZENSHIP STATUS FOR CURRENT RESIDENCE IN PUERTO RICO int B07007PR 0 NaN NaN B07007PR_019EA,B07007PR_019M,B07007PR_019MA NaN
B19101A_004E Estimate!!Total:!!$15,000 to $19,999 FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (WHITE ALONE HOUSEHOLDER) int B19101A 0 NaN NaN B19101A_004EA,B19101A_004M,B19101A_004MA NaN
B24022_061E Estimate!!Total:!!Female:!!Service occupations:!!Building and grounds cleaning and maintenance occupations SEX BY OCCUPATION AND MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE FULL-TIME, YEAR-ROUND CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER int B24022 0 NaN NaN B24022_061EA,B24022_061M,B24022_061MA NaN
B19001B_013E Estimate!!Total:!!$75,000 to $99,999 HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (BLACK OR AFRICAN AMERICAN ALONE HOUSEHOLDER) int B19001B 0 NaN NaN B19001B_013EA,B19001B_013M,B19001B_013MA NaN
B07007PR_018E Estimate!!Total:!!Moved from different municipio:!!Foreign born: GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY CITIZENSHIP STATUS FOR CURRENT RESIDENCE IN PUERTO RICO int B07007PR 0 NaN NaN B07007PR_018EA,B07007PR_018M,B07007PR_018MA NaN

We’re interested in variables about hispanic origin broken down by race — let’s see if we can find the variables where the “Concept” column starts with “RACE”

acs.varslike?
Signature: acs.varslike(pattern=None, by=None, engine='re', within=None)
Docstring:
Grabs columns that match a particular search pattern.
Parameters
----------
pattern : str
          a search pattern to match
by      : str
          a column in the APIConnection.variables to conduct the search
          within
engine  : {'re', 'fnmatch', callable}
          backend string matching module to use, or a function of the form
          match(candidate, pattern). (default: 're')
within  : pandas.DataFrame 
          the variables over which to search.
Notes
------
Only regex and fnmatch will be supported modules. Note that, while
regex is the default, the python regular expressions module has some
strange behavior if you're used to VIM or Perl-like regex. It may be
easier to use fnmatch if regex is not providing the results you expect.
If you want, you can also pass an engine that is a function. If so, this
needs to be a function that has a signature like:
fn(candidate, pattern)
and return True or False if the candidate matches the pattern. So, for
instance, you can use any string processing function:
    >>> cxn.varslike('_100M', engine = lambda c,p: c.endswith(p)
which may also be expressed as a regexp:
    >>> cxn.varslike('_100M$', engine='re')
or an fnmatch pattern:
    >>> cxn.varslike('*_100M', engine='fnmatch')
File:      ~/mambaforge/envs/musa-550-fall-2023/lib/python3.10/site-packages/cenpy/remote.py
Type:      method
race_matches = acs.varslike(
    pattern="HISPANIC OR LATINO ORIGIN BY RACE",
    by="concept",  # searches along concept column
).sort_index()
race_matches
label concept predicateType group limit predicateOnly hasGeoCollectionSupport attributes required
B03002_001E Estimate!!Total: HISPANIC OR LATINO ORIGIN BY RACE int B03002 0 NaN NaN B03002_001EA,B03002_001M,B03002_001MA NaN
B03002_002E Estimate!!Total:!!Not Hispanic or Latino: HISPANIC OR LATINO ORIGIN BY RACE int B03002 0 NaN NaN B03002_002EA,B03002_002M,B03002_002MA NaN
B03002_003E Estimate!!Total:!!Not Hispanic or Latino:!!White alone HISPANIC OR LATINO ORIGIN BY RACE int B03002 0 NaN NaN B03002_003EA,B03002_003M,B03002_003MA NaN
B03002_004E Estimate!!Total:!!Not Hispanic or Latino:!!Black or African American alone HISPANIC OR LATINO ORIGIN BY RACE int B03002 0 NaN NaN B03002_004EA,B03002_004M,B03002_004MA NaN
B03002_005E Estimate!!Total:!!Not Hispanic or Latino:!!American Indian and Alaska Native alone HISPANIC OR LATINO ORIGIN BY RACE int B03002 0 NaN NaN B03002_005EA,B03002_005M,B03002_005MA NaN
B03002_006E Estimate!!Total:!!Not Hispanic or Latino:!!Asian alone HISPANIC OR LATINO ORIGIN BY RACE int B03002 0 NaN NaN B03002_006EA,B03002_006M,B03002_006MA NaN
B03002_007E Estimate!!Total:!!Not Hispanic or Latino:!!Native Hawaiian and Other Pacific Islander alone HISPANIC OR LATINO ORIGIN BY RACE int B03002 0 NaN NaN B03002_007EA,B03002_007M,B03002_007MA NaN
B03002_008E Estimate!!Total:!!Not Hispanic or Latino:!!Some other race alone HISPANIC OR LATINO ORIGIN BY RACE int B03002 0 NaN NaN B03002_008EA,B03002_008M,B03002_008MA NaN
B03002_009E Estimate!!Total:!!Not Hispanic or Latino:!!Two or more races: HISPANIC OR LATINO ORIGIN BY RACE int B03002 0 NaN NaN B03002_009EA,B03002_009M,B03002_009MA NaN
B03002_010E Estimate!!Total:!!Not Hispanic or Latino:!!Two or more races:!!Two races including Some other race HISPANIC OR LATINO ORIGIN BY RACE int B03002 0 NaN NaN B03002_010EA,B03002_010M,B03002_010MA NaN
B03002_011E Estimate!!Total:!!Not Hispanic or Latino:!!Two or more races:!!Two races excluding Some other race, and three or more races HISPANIC OR LATINO ORIGIN BY RACE int B03002 0 NaN NaN B03002_011EA,B03002_011M,B03002_011MA NaN
B03002_012E Estimate!!Total:!!Hispanic or Latino: HISPANIC OR LATINO ORIGIN BY RACE int B03002 0 NaN NaN B03002_012EA,B03002_012M,B03002_012MA NaN
B03002_013E Estimate!!Total:!!Hispanic or Latino:!!White alone HISPANIC OR LATINO ORIGIN BY RACE int B03002 0 NaN NaN B03002_013EA,B03002_013M,B03002_013MA NaN
B03002_014E Estimate!!Total:!!Hispanic or Latino:!!Black or African American alone HISPANIC OR LATINO ORIGIN BY RACE int B03002 0 NaN NaN B03002_014EA,B03002_014M,B03002_014MA NaN
B03002_015E Estimate!!Total:!!Hispanic or Latino:!!American Indian and Alaska Native alone HISPANIC OR LATINO ORIGIN BY RACE int B03002 0 NaN NaN B03002_015EA,B03002_015M,B03002_015MA NaN
B03002_016E Estimate!!Total:!!Hispanic or Latino:!!Asian alone HISPANIC OR LATINO ORIGIN BY RACE int B03002 0 NaN NaN B03002_016EA,B03002_016M,B03002_016MA NaN
B03002_017E Estimate!!Total:!!Hispanic or Latino:!!Native Hawaiian and Other Pacific Islander alone HISPANIC OR LATINO ORIGIN BY RACE int B03002 0 NaN NaN B03002_017EA,B03002_017M,B03002_017MA NaN
B03002_018E Estimate!!Total:!!Hispanic or Latino:!!Some other race alone HISPANIC OR LATINO ORIGIN BY RACE int B03002 0 NaN NaN B03002_018EA,B03002_018M,B03002_018MA NaN
B03002_019E Estimate!!Total:!!Hispanic or Latino:!!Two or more races: HISPANIC OR LATINO ORIGIN BY RACE int B03002 0 NaN NaN B03002_019EA,B03002_019M,B03002_019MA NaN
B03002_020E Estimate!!Total:!!Hispanic or Latino:!!Two or more races:!!Two races including Some other race HISPANIC OR LATINO ORIGIN BY RACE int B03002 0 NaN NaN B03002_020EA,B03002_020M,B03002_020MA NaN
B03002_021E Estimate!!Total:!!Hispanic or Latino:!!Two or more races:!!Two races excluding Some other race, and three or more races HISPANIC OR LATINO ORIGIN BY RACE int B03002 0 NaN NaN B03002_021EA,B03002_021M,B03002_021MA NaN
GEO_ID Geography GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY INDIVIDUAL INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR RESIDENCE 1 YEAR AGO IN PUERTO RICO;MEDIAN INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY GEOGRAPHICAL MOBILITY IN THE PAST YEAR FOR RESIDENCE 1 YEAR AGO IN THE UNITED STATES;MEDIAN INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY GEOGRAPHICAL MOBILITY IN THE PAST YEAR FOR RESIDENCE 1 YEAR AGO IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY POVERTY STATUS IN THE PAST 12 MONTHS FOR RESIDENCE 1 YEAR AGO IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY POVERTY STATUS IN THE PAST 12 MONTHS FOR RESIDENCE 1 YEAR AGO IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY TENURE FOR RESIDENCE 1 YEAR AGO IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY TENURE FOR RESIDENCE 1 YEAR AGO IN PUERTO RICO;SEX OF WORKERS BY MEANS OF TRANSPORTATION TO WORK;SEX OF WORKERS BY PLACE OF WORK--STATE AND COUNTY LEVEL;SEX OF WORKERS BY PLACE OF WORK--PLACE LEVEL;SEX OF WORKERS BY PLACE OF WORK--MINOR CIVIL DIVISION LEVEL FOR 12 SELECTED STATES (CT, ME, MA, MI, MN, NH, NJ, NY, PA, RI, VT, WI);SEX OF WORKERS BY TIME OF DEPARTURE TO GO TO WORK;SEX OF WORKERS BY TRAVEL TIME TO WORK;AGGREGATE TRAVEL TIME TO WORK (IN MINUTES) OF WORKERS BY SEX;SEX OF WORKERS BY VEHICLES AVAILABLE;AGGREGATE NUMBER OF VEHICLES (CAR, TRUCK, OR VAN) USED IN COMMUTING BY WORKERS 16 YEARS AND OVER BY SEX;PLACE OF WORK FOR WORKERS 16 YEARS AND OVER--METROPOLITAN STATISTICAL AREA LEVEL;PLACE OF WORK FOR WORKERS 16 YEARS AND OVER--MICROPOLITAN STATISTICAL AREA LEVEL;PLACE OF WORK FOR WORKERS 16 YEARS AND OVER--NOT METROPOLITAN OR MICROPOLITAN STATISTICAL AREA LEVEL;MEANS OF TRANSPORTATION TO WORK BY AGE;MEDIAN AGE BY MEANS OF TRANSPORTATION TO WORK;MEANS OF TRANSPORTATION TO WORK (WHITE ALONE);MEANS OF TRANSPORTATION TO WORK (BLACK OR AFRICAN AMERICAN ALONE);MEANS OF TRANSPORTATION TO WORK (AMERICAN INDIAN AND ALASKA NATIVE ALONE);MEANS OF TRANSPORTATION TO WORK (ASIAN ALONE);MEANS OF TRANSPORTATION TO WORK (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);MEANS OF TRANSPORTATION TO WORK (SOME OTHER RACE ALONE);MEANS OF TRANSPORTATION TO WORK (TWO OR MORE RACES);MEANS OF TRANSPORTATION TO WORK (WHITE ALONE, NOT HISPANIC OR LATINO);MEANS OF TRANSPORTATION TO WORK (HISPANIC OR LATINO);MEANS OF TRANSPORTATION TO WORK BY CITIZENSHIP STATUS;MEANS OF TRANSPORTATION TO WORK BY LANGUAGE SPOKEN AT HOME AND ABILITY TO SPEAK ENGLISH;MEANS OF TRANSPORTATION TO WORK BY WORKERS' EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS);MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY MEANS OF TRANSPORTATION TO WORK;MEANS OF TRANSPORTATION TO WORK BY POVERTY STATUS IN THE PAST 12 MONTHS;MEANS OF TRANSPORTATION TO WORK BY OCCUPATION;MEANS OF TRANSPORTATION TO WORK BY INDUSTRY;TENURE (WHITE ALONE, NOT HISPANIC OR LATINO HOUSEHOLDER);TENURE (HISPANIC OR LATINO HOUSEHOLDER);VACANCY STATUS;VACANT - CURRENT RESIDENCE ELSEWHERE;RACE OF HOUSEHOLDER;TENURE BY AGE OF HOUSEHOLDER;TOTAL POPULATION IN OCCUPIED HOUSING UNITS BY TENURE;TENURE BY HOUSEHOLD SIZE;AVERAGE HOUSEHOLD SIZE OF OCCUPIED HOUSING UNITS BY TENURE;TENURE BY HOUSEHOLD TYPE (INCLUDING LIVING ALONE) AND AGE OF HOUSEHOLDER;TENURE BY FAMILIES AND PRESENCE OF OWN CHILDREN;TENURE BY EDUCATIONAL ATTAINMENT OF HOUSEHOLDER;TENURE BY OCCUPANTS PER ROOM;OCCUPANTS PER ROOM (WHITE ALONE HOUSEHOLDER);OCCUPANTS PER ROOM (BLACK OR AFRICAN AMERICAN ALONE HOUSEHOLDER);OCCUPANTS PER ROOM (AMERICAN INDIAN AND ALASKA NATIVE ALONE HOUSEHOLDER);OCCUPANTS PER ROOM (ASIAN ALONE HOUSEHOLDER);OCCUPANTS PER ROOM (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE HOUSEHOLDER);OCCUPANTS PER ROOM (SOME OTHER RACE ALONE HOUSEHOLDER);OCCUPANTS PER ROOM (TWO OR MORE RACES HOUSEHOLDER);OCCUPANTS PER ROOM (WHITE ALONE, NOT HISPANIC OR LATINO HOUSEHOLDER);OCCUPANTS PER ROOM (HISPANIC OR LATINO HOUSEHOLDER);TENURE BY AGE OF HOUSEHOLDER BY OCCUPANTS PER ROOM;TENURE BY PLUMBING FACILITIES BY OCCUPANTS PER ROOM;ROOMS;MEDIAN NUMBER OF ROOMS;AGGREGATE NUMBER OF ROOMS;TENURE BY ROOMS;MEDIAN NUMBER OF ROOMS BY TENURE;AGGREGATE NUMBER OF ROOMS BY TENURE;UNITS IN STRUCTURE;TOTAL POPULATION IN OCCUPIED HOUSING UNITS BY TENURE BY YEAR HOUSEHOLDER MOVED INTO UNIT;MORTGAGE STATUS BY AGE OF HOUSEHOLDER;MEDIAN GROSS RENT BY BEDROOMS;TENURE BY UNITS IN STRUCTURE;UNITS IN STRUCTURE (WHITE ALONE HOUSEHOLDER);UNITS IN STRUCTURE (BLACK OR AFRICAN AMERICAN ALONE HOUSEHOLDER);UNITS IN STRUCTURE (AMERICAN INDIAN AND ALASKA NATIVE ALONE HOUSEHOLDER);UNITS IN STRUCTURE (ASIAN ALONE HOUSEHOLDER);UNITS IN STRUCTURE (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE HOUSEHOLDER);MEANS OF TRANSPORTATION TO WORK BY CLASS OF WORKER;MEANS OF TRANSPORTATION TO WORK BY PLACE OF WORK--STATE AND COUNTY LEVEL;AGGREGATE TRAVEL TIME TO WORK (IN MINUTES) OF WORKERS BY PLACE OF WORK--STATE AND COUNTY LEVEL;MEANS OF TRANSPORTATION TO WORK BY TIME OF DEPARTURE TO GO TO WORK;AGGREGATE TRAVEL TIME TO WORK (IN MINUTES) OF WORKERS BY TIME OF DEPARTURE TO GO TO WORK;MEANS OF TRANSPORTATION TO WORK BY TRAVEL TIME TO WORK;AGGREGATE TRAVEL TIME TO WORK (IN MINUTES) OF WORKERS BY TRAVEL TIME TO WORK;AGGREGATE TRAVEL TIME TO WORK (IN MINUTES) OF WORKERS BY MEANS OF TRANSPORTATION TO WORK;MEANS OF TRANSPORTATION TO WORK BY TENURE;MEANS OF TRANSPORTATION TO WORK BY VEHICLES AVAILABLE;HOUSEHOLD SIZE BY VEHICLES AVAILABLE;HOUSEHOLD SIZE BY NUMBER OF WORKERS IN HOUSEHOLD;NUMBER OF WORKERS IN HOUSEHOLD BY VEHICLES AVAILABLE;MEANS OF TRANSPORTATION TO WORK;TIME OF DEPARTURE TO GO TO WORK;TRAVEL TIME TO WORK;SEX OF WORKERS BY MEANS OF TRANSPORTATION TO WORK FOR WORKPLACE GEOGRAPHY;SEX OF WORKERS BY TRAVEL TIME TO WORK FOR WORKPLACE GEOGRAPHY;MEANS OF TRANSPORTATION TO WORK BY AGE FOR WORKPLACE GEOGRAPHY;MEDIAN AGE BY MEANS OF TRANSPORTATION TO WORK FOR WORKPLACE GEOGRAPHY;MEANS OF TRANSPORTATION TO WORK FOR WORKPLACE GEOGRAPHY (WHITE ALONE);MEANS OF TRANSPORTATION TO WORK FOR WORKPLACE GEOGRAPHY (BLACK OR AFRICAN AMERICAN ALONE);MEANS OF TRANSPORTATION TO WORK FOR WORKPLACE GEOGRAPHY (AMERICAN INDIAN AND ALASKA NATIVE ALONE);MEANS OF TRANSPORTATION TO WORK FOR WORKPLACE GEOGRAPHY (ASIAN ALONE);MEANS OF TRANSPORTATION TO WORK FOR WORKPLACE GEOGRAPHY (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);MEANS OF TRANSPORTATION TO WORK FOR WORKPLACE GEOGRAPHY (SOME OTHER RACE ALONE);MEANS OF TRANSPORTATION TO WORK FOR WORKPLACE GEOGRAPHY (TWO OR MORE RACES);MEANS OF TRANSPORTATION TO WORK FOR WORKPLACE GEOGRAPHY (WHITE ALONE, NOT HISPANIC OR LATINO);MEANS OF TRANSPORTATION TO WORK FOR WORKPLACE GEOGRAPHY (HISPANIC OR LATINO);MEANS OF TRANSPORTATION TO WORK BY CITIZENSHIP STATUS FOR WORKPLACE GEOGRAPHY;MEANS OF TRANSPORTATION TO WORK BY LANGUAGE SPOKEN AT HOME AND ABILITY TO SPEAK ENGLISH FOR WORKPLACE GEOGRAPHY;MEANS OF TRANSPORTATION TO WORK BY WORKERS' EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR WORKPLACE GEOGRAPHY;MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY MEANS OF TRANSPORTATION TO WORK FOR WORKPLACE GEOGRAPHY;MEANS OF TRANSPORTATION TO WORK BY POVERTY STATUS IN THE PAST 12 MONTHS FOR WORKPLACE GEOGRAPHY;MEANS OF TRANSPORTATION TO WORK BY OCCUPATION FOR WORKPLACE GEOGRAPHY;UNITS IN STRUCTURE (SOME OTHER RACE ALONE HOUSEHOLDER);UNITS IN STRUCTURE (TWO OR MORE RACES HOUSEHOLDER);UNITS IN STRUCTURE (WHITE ALONE, NOT HISPANIC OR LATINO HOUSEHOLDER);UNITS IN STRUCTURE (HISPANIC OR LATINO HOUSEHOLDER);TOTAL POPULATION IN OCCUPIED HOUSING UNITS BY TENURE BY UNITS IN STRUCTURE;YEAR STRUCTURE BUILT;MEDIAN YEAR STRUCTURE BUILT;TENURE BY YEAR STRUCTURE BUILT;MEDIAN YEAR STRUCTURE BUILT BY TENURE;TENURE BY YEAR HOUSEHOLDER MOVED INTO UNIT;MEDIAN YEAR HOUSEHOLDER MOVED INTO UNIT BY TENURE;HOUSE HEATING FUEL;BEDROOMS;TENURE BY BEDROOMS;TENURE BY TELEPHONE SERVICE AVAILABLE BY AGE OF HOUSEHOLDER;TENURE BY VEHICLES AVAILABLE;TENURE BY VEHICLES AVAILABLE BY AGE OF HOUSEHOLDER;AGGREGATE NUMBER OF VEHICLES AVAILABLE BY TENURE;PLUMBING FACILITIES FOR ALL HOUSING UNITS;PLUMBING FACILITIES FOR OCCUPIED HOUSING UNITS;TENURE BY PLUMBING FACILITIES;PLUMBING FACILITIES BY OCCUPANTS PER ROOM BY YEAR STRUCTURE BUILT;KITCHEN FACILITIES FOR ALL HOUSING UNITS;KITCHEN FACILITIES FOR OCCUPIED HOUSING UNITS;TENURE BY KITCHEN FACILITIES;KITCHEN FACILITIES BY MEALS INCLUDED IN RENT;AGE OF HOUSEHOLDER BY MEALS INCLUDED IN RENT;CONTRACT RENT;LOWER CONTRACT RENT QUARTILE (DOLLARS);MEDIAN CONTRACT RENT (DOLLARS);UPPER CONTRACT RENT QUARTILE (DOLLARS);AGGREGATE CONTRACT RENT (DOLLARS);RENT ASKED;AGGREGATE RENT ASKED (DOLLARS);GROSS RENT;MEDIAN GROSS RENT (DOLLARS);AGGREGATE GROSS RENT (DOLLARS);AGGREGATE GROSS RENT (DOLLARS) BY UNITS IN STRUCTURE;AGGREGATE GROSS RENT (DOLLARS) BY MEALS INCLUDED IN RENT;BEDROOMS BY GROSS RENT;INCLUSION OF UTILITIES IN RENT;GROSS RENT AS A PERCENTAGE OF HOUSEHOLD INCOME IN THE PAST 12 MONTHS;MEDIAN GROSS RENT AS A PERCENTAGE OF HOUSEHOLD INCOME IN THE PAST 12 MONTHS (DOLLARS);AGE OF HOUSEHOLDER BY GROSS RENT AS A PERCENTAGE OF HOUSEHOLD INCOME IN THE PAST 12 MONTHS;HOUSEHOLD INCOME BY GROSS RENT AS A PERCENTAGE OF HOUSEHOLD INCOME IN THE PAST 12 MONTHS;VALUE;MEANS OF TRANSPORTATION TO WORK BY INDUSTRY FOR WORKPLACE GEOGRAPHY;MEANS OF TRANSPORTATION TO WORK BY CLASS OF WORKER FOR WORKPLACE GEOGRAPHY;MEANS OF TRANSPORTATION TO WORK BY TIME ARRIVING AT WORK FOR WORKPLACE GEOGRAPHY;MEANS OF TRANSPORTATION TO WORK BY TRAVEL TIME TO WORK FOR WORKPLACE GEOGRAPHY;AGGREGATE TRAVEL TIME TO WORK (IN MINUTES) OF WORKERS BY MEANS OF TRANSPORTATION TO WORK FOR WORKPLACE GEOGRAPHY;MEANS OF TRANSPORTATION TO WORK BY TENURE FOR WORKPLACE GEOGRAPHY;MEANS OF TRANSPORTATION TO WORK BY VEHICLES AVAILABLE FOR WORKPLACE GEOGRAPHY;MEANS OF TRANSPORTATION TO WORK FOR WORKPLACE GEOGRAPHY;TIME ARRIVING AT WORK FOR WORKPLACE GEOGRAPHY;TRAVEL TIME TO WORK FOR WORKPLACE GEOGRAPHY;WORKER POPULATION FOR WORKPLACE GEOGRAPHY;POPULATION UNDER 18 YEARS BY AGE;OWN CHILDREN UNDER 18 YEARS BY FAMILY TYPE AND AGE;HOUSEHOLD TYPE FOR CHILDREN UNDER 18 YEARS IN HOUSEHOLDS (EXCLUDING HOUSEHOLDERS, SPOUSES, AND UNMARRIED PARTNERS);RECEIPT OF SUPPLEMENTAL SECURITY INCOME (SSI), CASH PUBLIC ASSISTANCE INCOME, OR FOOD STAMPS/SNAP IN THE PAST 12 MONTHS BY HOUSEHOLD TYPE FOR CHILDREN UNDER 18 YEARS IN HOUSEHOLDS;RELATIONSHIP TO HOUSEHOLDER FOR CHILDREN UNDER 18 YEARS IN HOUSEHOLDS;HOUSEHOLD TYPE (INCLUDING LIVING ALONE) BY RELATIONSHIP;RELATIONSHIP BY HOUSEHOLD TYPE (INCLUDING LIVING ALONE) FOR THE POPULATION 65 YEARS AND OVER;LIVING ARRANGEMENTS OF ADULTS 18 YEARS AND OVER BY AGE;GRANDCHILDREN UNDER 18 YEARS LIVING WITH A GRANDPARENT HOUSEHOLDER BY AGE OF GRANDCHILD;GRANDCHILDREN UNDER 18 YEARS LIVING WITH A GRANDPARENT HOUSEHOLDER BY GRANDPARENT RESPONSIBILITY AND PRESENCE OF PARENT;MEDIAN FAMILY INCOME FOR FAMILIES WITH GRANDPARENT HOUSEHOLDERS AND/OR SPOUSES LIVING WITH OWN GRANDCHILDREN UNDER 18 YEARS BY RESPONSIBILITY FOR OWN GRANDCHILDREN AND PRESENCE OF PARENT OF GRANDCHILDREN;GRANDPARENTS LIVING WITH OWN GRANDCHILDREN UNDER 18 YEARS BY RESPONSIBILITY FOR OWN GRANDCHILDREN BY LENGTH OF TIME RESPONSIBLE FOR OWN GRANDCHILDREN FOR THE POPULATION 30 YEARS AND OVER;GRANDPARENTS LIVING WITH OWN GRANDCHILDREN UNDER 18 YEARS BY RESPONSIBILITY FOR OWN GRANDCHILDREN BY PRESENCE OF PARENT OF GRANDCHILDREN AND AGE OF GRANDPARENT;GRANDPARENTS LIVING WITH OWN GRANDCHILDREN UNDER 18 YEARS BY RESPONSIBILITY FOR OWN GRANDCHILDREN AND AGE OF GRANDPARENT (WHITE ALONE);GRANDPARENTS LIVING WITH OWN GRANDCHILDREN UNDER 18 YEARS BY RESPONSIBILITY FOR OWN GRANDCHILDREN AND AGE OF GRANDPARENT (BLACK OR AFRICAN AMERICAN ALONE);GRANDPARENTS LIVING WITH OWN GRANDCHILDREN UNDER 18 YEARS BY RESPONSIBILITY FOR OWN GRANDCHILDREN AND AGE OF GRANDPARENT (AMERICAN INDIAN AND ALASKA NATIVE ALONE);GRANDPARENTS LIVING WITH OWN GRANDCHILDREN UNDER 18 YEARS BY RESPONSIBILITY FOR OWN GRANDCHILDREN AND AGE OF GRANDPARENT (ASIAN ALONE);GRANDPARENTS LIVING WITH OWN GRANDCHILDREN UNDER 18 YEARS BY RESPONSIBILITY FOR OWN GRANDCHILDREN AND AGE OF GRANDPARENT (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);GRANDPARENTS LIVING WITH OWN GRANDCHILDREN UNDER 18 YEARS BY RESPONSIBILITY FOR OWN GRANDCHILDREN AND AGE OF GRANDPARENT (SOME OTHER RACE ALONE);GRANDPARENTS LIVING WITH OWN GRANDCHILDREN UNDER 18 YEARS BY RESPONSIBILITY FOR OWN GRANDCHILDREN AND AGE OF GRANDPARENT (TWO OR MORE RACES);GRANDPARENTS LIVING WITH OWN GRANDCHILDREN UNDER 18 YEARS BY RESPONSIBILITY FOR OWN GRANDCHILDREN AND AGE OF GRANDPARENT (WHITE ALONE, NOT HISPANIC OR LATINO);LOWER VALUE QUARTILE (DOLLARS);MEDIAN VALUE (DOLLARS);UPPER VALUE QUARTILE (DOLLARS);AGGREGATE VALUE (DOLLARS) BY AGE OF HOUSEHOLDER;AGGREGATE VALUE (DOLLARS) BY UNITS IN STRUCTURE;MORTGAGE STATUS;AGGREGATE VALUE (DOLLARS) BY MORTGAGE STATUS;MEDIAN VALUE (DOLLARS) FOR MOBILE HOMES;PRICE ASKED;AGGREGATE PRICE ASKED (DOLLARS);MORTGAGE STATUS AND SELECTED MONTHLY OWNER COSTS;MEDIAN SELECTED MONTHLY OWNER COSTS (DOLLARS) BY MORTGAGE STATUS;AGGREGATE SELECTED MONTHLY OWNER COSTS (DOLLARS) BY MORTGAGE STATUS;MORTGAGE STATUS BY AGGREGATE REAL ESTATE TAXES PAID (DOLLARS);MORTGAGE STATUS BY SELECTED MONTHLY OWNER COSTS AS A PERCENTAGE OF HOUSEHOLD INCOME IN THE PAST 12 MONTHS;MEDIAN SELECTED MONTHLY OWNER COSTS AS A PERCENTAGE OF HOUSEHOLD INCOME IN THE PAST 12 MONTHS;AGE OF HOUSEHOLDER BY SELECTED MONTHLY OWNER COSTS AS A PERCENTAGE OF HOUSEHOLD INCOME IN THE PAST 12 MONTHS;SELECTED MONTHLY OWNER COSTS;HOUSEHOLD INCOME BY SELECTED MONTHLY OWNER COSTS AS A PERCENTAGE OF HOUSEHOLD INCOME IN THE PAST 12 MONTHS;MORTGAGE STATUS BY VALUE;MORTGAGE STATUS BY MEDIAN VALUE (DOLLARS);MORTGAGE STATUS BY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS);MORTGAGE STATUS BY MEDIAN HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS);MORTGAGE STATUS BY RATIO OF VALUE TO HOUSEHOLD INCOME IN THE PAST 12 MONTHS;MORTGAGE STATUS BY MONTHLY HOUSING COSTS AS A PERCENTAGE OF HOUSEHOLD INCOME IN THE PAST 12 MONTHS;MORTGAGE STATUS BY REAL ESTATE TAXES PAID;MORTGAGE STATUS BY MEDIAN REAL ESTATE TAXES PAID (DOLLARS);MONTHLY HOUSING COSTS;MEDIAN MONTHLY HOUSING COSTS (DOLLARS);TENURE BY HOUSING COSTS AS A PERCENTAGE OF HOUSEHOLD INCOME IN THE PAST 12 MONTHS;MEDIAN VALUE BY YEAR STRUCTURE BUILT;AGGREGATE VALUE (DOLLARS) BY YEAR STRUCTURE BUILT;MEDIAN VALUE BY YEAR HOUSEHOLDER MOVED INTO UNIT;AGGREGATE VALUE (DOLLARS) BY YEAR HOUSEHOLDER MOVED INTO UNIT;MEDIAN GROSS RENT BY YEAR STRUCTURE BUILT;AGGREGATE GROSS RENT (DOLLARS) BY YEAR STRUCTURE BUILT;MEDIAN GROSS RENT BY YEAR HOUSEHOLDER MOVED INTO UNIT;AGGREGATE GROSS RENT (DOLLARS) BY YEAR HOUSEHOLDER MOVED INTO UNIT;TENURE BY HOUSEHOLD TYPE AND PRESENCE AND AGE OF OWN CHILDREN;TENURE BY HOUSEHOLD SIZE BY AGE OF HOUSEHOLDER;TENURE BY HOUSE HEATING FUEL;TENURE BY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS);MEDIAN HOUSEHOLD INCOME THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY TENURE;GRANDPARENTS LIVING WITH OWN GRANDCHILDREN UNDER 18 YEARS BY RESPONSIBILITY FOR OWN GRANDCHILDREN AND AGE OF GRANDPARENT (HISPANIC OR LATINO);DISABILITY STATUS OF GRANDPARENTS LIVING WITH OWN GRANDCHILDREN UNDER 18 YEARS BY RESPONSIBILITY FOR OWN GRANDCHILDREN AND AGE OF GRANDPARENT;NATIVITY BY GRANDPARENTS RESPONSIBLE FOR OWN GRANDCHILDREN UNDER 18 YEARS BY AGE OF GRANDPARENT;LANGUAGE AND ABILITY TO SPEAK ENGLISH OF GRANDPARENTS LIVING WITH OWN GRANDCHILDREN UNDER 18 YEARS BY RESPONSIBILITY FOR OWN GRANDCHILDREN AND AGE OF GRANDPARENT;SEX OF GRANDPARENTS LIVING WITH OWN GRANDCHILDREN UNDER 18 YEARS BY RESPONSIBILITY FOR OWN GRANDCHILDREN AND AGE OF GRANDPARENT;MARITAL STATUS BY GRANDPARENTS LIVING WITH OWN GRANDCHILDREN UNDER 18 YEARS BY RESPONSIBILITY FOR OWN GRANDCHILDREN AND AGE OF GRANDPARENT;EMPLOYMENT STATUS OF GRANDPARENTS LIVING WITH OWN GRANDCHILDREN UNDER 18 YEARS BY RESPONSIBILITY FOR OWN GRANDCHILDREN AND AGE OF GRANDPARENT;POVERTY STATUS IN THE PAST 12 MONTHS OF GRANDPARENTS LIVING WITH OWN GRANDCHILDREN UNDER 18 YEARS BY RESPONSIBILITY FOR OWN GRANDCHILDREN AND AGE OF GRANDPARENT;HOUSEHOLDS WITH GRANDPARENTS LIVING WITH OWN GRANDCHILDREN UNDER 18 YEARS BY RESPONSIBILITY FOR OWN GRANDCHILDREN AND PRESENCE OF PARENT OF GRANDCHILDREN;HOUSEHOLD TYPE (INCLUDING LIVING ALONE);HOUSEHOLD TYPE (INCLUDING LIVING ALONE) (WHITE ALONE);HOUSEHOLD TYPE (INCLUDING LIVING ALONE) (BLACK OR AFRICAN AMERICAN ALONE);HOUSEHOLD TYPE (INCLUDING LIVING ALONE) (AMERICAN INDIAN AND ALASKA NATIVE ALONE);HOUSEHOLD TYPE (INCLUDING LIVING ALONE) (ASIAN ALONE);HOUSEHOLD TYPE (INCLUDING LIVING ALONE) (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);HOUSEHOLD TYPE (INCLUDING LIVING ALONE) (SOME OTHER RACE ALONE);HOUSEHOLD TYPE (INCLUDING LIVING ALONE) (TWO OR MORE RACES);HOUSEHOLD TYPE (INCLUDING LIVING ALONE) (WHITE ALONE, NOT HISPANIC OR LATINO);HOUSEHOLD TYPE (INCLUDING LIVING ALONE) (HISPANIC OR LATINO);HOUSEHOLD TYPE BY RELATIVES AND NONRELATIVES FOR POPULATION IN HOUSEHOLDS;HOUSEHOLD TYPE BY RELATIVES AND NONRELATIVES FOR POPULATION IN HOUSEHOLDS (WHITE ALONE);HOUSEHOLD TYPE BY RELATIVES AND NONRELATIVES FOR POPULATION IN HOUSEHOLDS (BLACK OR AFRICAN AMERICAN ALONE);HOUSEHOLD TYPE BY RELATIVES AND NONRELATIVES FOR POPULATION IN HOUSEHOLDS (AMERICAN INDIAN AND ALASKA NATIVE ALONE);HOUSEHOLD TYPE BY RELATIVES AND NONRELATIVES FOR POPULATION IN HOUSEHOLDS (ASIAN ALONE);HOUSEHOLD TYPE BY RELATIVES AND NONRELATIVES FOR POPULATION IN HOUSEHOLDS (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);HOUSEHOLD TYPE BY RELATIVES AND NONRELATIVES FOR POPULATION IN HOUSEHOLDS (SOME OTHER RACE ALONE);HOUSEHOLD TYPE BY RELATIVES AND NONRELATIVES FOR POPULATION IN HOUSEHOLDS (TWO OR MORE RACES);HOUSEHOLD TYPE BY RELATIVES AND NONRELATIVES FOR POPULATION IN HOUSEHOLDS (WHITE ALONE, NOT HISPANIC OR LATINO);HOUSEHOLD TYPE BY RELATIVES AND NONRELATIVES FOR POPULATION IN HOUSEHOLDS (HISPANIC OR LATINO);FAMILY TYPE BY PRESENCE AND AGE OF OWN CHILDREN UNDER 18 YEARS;FAMILY TYPE BY PRESENCE AND AGE OF RELATED CHILDREN UNDER 18 YEARS;HOUSEHOLDS BY PRESENCE OF PEOPLE UNDER 18 YEARS BY HOUSEHOLD TYPE;HOUSEHOLDS BY PRESENCE OF PEOPLE 60 YEARS AND OVER BY HOUSEHOLD TYPE;HOUSEHOLDS BY PRESENCE OF PEOPLE 65 YEARS AND OVER, HOUSEHOLD SIZE AND HOUSEHOLD TYPE;HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY VALUE;HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY GROSS RENT;TENURE BY SELECTED PHYSICAL AND FINANCIAL CONDITIONS;AGGREGATE HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY TENURE AND MORTGAGE STATUS;TENURE BY HOUSEHOLD SIZE BY UNITS IN STRUCTURE;TENURE BY AGE OF HOUSEHOLDER BY UNITS IN STRUCTURE;TENURE BY AGE OF HOUSEHOLDER BY YEAR STRUCTURE BUILT;TENURE BY YEAR STRUCTURE BUILT BY UNITS IN STRUCTURE;TENURE BY AGE OF HOUSEHOLDER BY YEAR HOUSEHOLDER MOVED INTO UNIT;TENURE BY YEAR HOUSEHOLDER MOVED INTO UNIT BY UNITS IN STRUCTURE;MONTHLY ELECTRICITY COSTS;MONTHLY GAS COSTS;ANNUAL WATER AND SEWER COSTS;ANNUAL OTHER FUEL COSTS;GROUP QUARTERS POPULATION;GROUP QUARTERS TYPE (3 TYPES) BY SEX BY AGE;MEDIAN AGE BY GROUP QUARTERS TYPE (3 TYPES);GROUP QUARTERS TYPE (3 TYPES);GROUP QUARTERS TYPE (3 TYPES) (WHITE ALONE);GROUP QUARTERS TYPE (3 TYPES) (BLACK OR AFRICAN AMERICAN ALONE);GROUP QUARTERS TYPE (3 TYPES) (AMERICAN INDIAN AND ALASKA NATIVE ALONE);GROUP QUARTERS TYPE (3 TYPES) (ASIAN ALONE);GROUP QUARTERS TYPE (3 TYPES) (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);GROUP QUARTERS TYPE (3 TYPES) (SOME OTHER RACE ALONE);GROUP QUARTERS TYPE (3 TYPES) (TWO OR MORE RACES);GROUP QUARTERS TYPE (3 TYPES) (WHITE ALONE, NOT HISPANIC OR LATINO);GROUP QUARTERS TYPE (3 TYPES) (HISPANIC OR LATINO);GROUP QUARTERS TYPE (3 TYPES) BY MARITAL STATUS;GROUP QUARTERS TYPE (3 TYPES) BY SCHOOL ENROLLMENT;GROUP QUARTERS TYPE (3 TYPES) BY EDUCATIONAL ATTAINMENT;GROUP QUARTERS TYPE (3 TYPES) BY VETERAN STATUS;GROUP QUARTERS TYPE (3 TYPES) BY AGE BY DISABILITY STATUS;GROUP QUARTERS TYPE (3 TYPES) BY GEOGRAPHICAL MOBILITY IN THE PAST YEAR FOR CURRENT RESIDENCE IN THE UNITED STATES;GROUP QUARTERS TYPE (3 TYPES) BY GEOGRAPHICAL MOBILITY IN THE PAST YEAR FOR CURRENT RESIDENCE IN PUERTO RICO;GROUP QUARTERS TYPE (3 TYPES) BY NATIVITY AND CITIZENSHIP STATUS BY SEX;GROUP QUARTERS TYPE (3 TYPES) BY LANGUAGE SPOKEN AT HOME BY ABILITY TO SPEAK ENGLISH;GROUP QUARTERS TYPE (3 TYPES) BY EMPLOYMENT STATUS;GROUP QUARTERS TYPE (3 TYPES) BY OCCUPATION;GROUP QUARTERS TYPE (3 TYPES) BY SEX WITH EARNINGS IN THE PAST 12 MONTHS;AGGREGATE EARNINGS IN THE PAST 12 MONTHS BY GROUP QUARTERS TYPE (3 TYPES) BY SEX;MEDIAN EARNINGS IN THE PAST 12 MONTHS BY GROUP QUARTERS TYPE (3 TYPES) BY SEX;GROUP QUARTERS TYPE (3 TYPES) BY RECEIPT OF FOOD STAMPS/SNAP IN THE PAST 12 MONTHS;GROUP QUARTERS TYPE (5 TYPES) BY SEX BY AGE;COHABITING COUPLE HOUSEHOLDS BY PRESENCE AND AGE OF OWN CHILDREN UNDER 18 YEARS;COUPLED HOUSEHOLDS BY TYPE;NONFAMILY HOUSEHOLDS BY SEX OF HOUSEHOLDER BY LIVING ALONE BY AGE OF HOUSEHOLDER;HOUSEHOLD TYPE BY UNITS IN STRUCTURE;HOUSEHOLDS BY TYPE;SUBFAMILY TYPE BY PRESENCE OF OWN CHILDREN UNDER 18 YEARS;POPULATION IN SUBFAMILIES BY SUBFAMILY TYPE BY RELATIONSHIP;HOUSEHOLDS BY PRESENCE OF NONRELATIVES;HOUSEHOLD TYPE BY HOUSEHOLD SIZE;MULTIGENERATIONAL HOUSEHOLDS;SEX BY MARITAL STATUS FOR THE POPULATION 15 YEARS AND OVER;SEX BY MARITAL STATUS BY AGE FOR THE POPULATION 15 YEARS AND OVER;SEX BY MARITAL STATUS FOR THE POPULATION 15 YEARS AND OVER (WHITE ALONE);SEX BY MARITAL STATUS FOR THE POPULATION 15 YEARS AND OVER (BLACK OR AFRICAN AMERICAN ALONE);SEX BY MARITAL STATUS FOR THE POPULATION 15 YEARS AND OVER (AMERICAN INDIAN AND ALASKA NATIVE ALONE);SEX BY MARITAL STATUS FOR THE POPULATION 15 YEARS AND OVER (ASIAN ALONE);SEX BY MARITAL STATUS FOR THE POPULATION 15 YEARS AND OVER (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);SEX BY MARITAL STATUS FOR THE POPULATION 15 YEARS AND OVER (SOME OTHER RACE ALONE);SEX BY MARITAL STATUS FOR THE POPULATION 15 YEARS AND OVER (TWO OR MORE RACES);SEX BY MARITAL STATUS FOR THE POPULATION 15 YEARS AND OVER (WHITE ALONE, NOT HISPANIC OR LATINO);SEX BY MARITAL STATUS FOR THE POPULATION 15 YEARS AND OVER (HISPANIC OR LATINO);MARITAL STATUS BY SEX BY LABOR FORCE PARTICIPATION;MEDIAN AGE AT FIRST MARRIAGE;MEDIAN AGE AT FIRST MARRIAGE (WHITE ALONE);MEDIAN AGE AT FIRST MARRIAGE (BLACK OR AFRICAN AMERICAN ALONE);MEDIAN AGE AT FIRST MARRIAGE (AMERICAN INDIAN AND ALASKA NATIVE ALONE);MEDIAN AGE AT FIRST MARRIAGE (ASIAN ALONE);MEDIAN AGE AT FIRST MARRIAGE (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);MEDIAN AGE AT FIRST MARRIAGE (SOME OTHER RACE ALONE);MEDIAN AGE AT FIRST MARRIAGE (TWO OR MORE RACES);MEDIAN AGE AT FIRST MARRIAGE (WHITE ALONE, NOT HISPANIC OR LATINO);MEDIAN AGE AT FIRST MARRIAGE (HISPANIC OR LATINO);MARRIAGES IN THE LAST YEAR BY SEX BY MARITAL STATUS FOR THE POPULATION 15 YEARS AND OVER;MARRIAGES ENDING IN WIDOWHOOD IN THE LAST YEAR BY SEX BY MARITAL STATUS FOR THE POPULATION 15 YEARS AND OVER;DIVORCES IN THE LAST YEAR BY SEX BY MARITAL STATUS FOR THE POPULATION 15 YEARS AND OVER;MEDIAN DURATION OF CURRENT MARRIAGE IN YEARS BY SEX BY MARITAL STATUS FOR THE MARRIED POPULATION 15 YEARS AND OVER;NUMBER OF TIMES MARRIED BY SEX BY MARITAL STATUS FOR THE POPULATION 15 YEARS AND OVER;WOMEN 15 TO 50 YEARS WHO HAD A BIRTH IN THE PAST 12 MONTHS BY MARITAL STATUS AND AGE;WOMEN 15 TO 50 YEARS WHO HAD A BIRTH IN THE PAST 12 MONTHS BY MARITAL STATUS (WHITE ALONE);WOMEN 15 TO 50 YEARS WHO HAD A BIRTH IN THE PAST 12 MONTHS BY MARITAL STATUS (BLACK OR AFRICAN AMERICAN ALONE);MEDIAN AGE BY GROUP QUARTERS TYPE (5 TYPES);GROUP QUARTERS TYPE (5 TYPES);GROUP QUARTERS TYPE (5 TYPES) (WHITE ALONE);GROUP QUARTERS TYPE (5 TYPES) (BLACK OR AFRICAN AMERICAN ALONE);GROUP QUARTERS TYPE (5 TYPES) (AMERICAN INDIAN AND ALASKA NATIVE ALONE);GROUP QUARTERS TYPE (5 TYPES) (ASIAN ALONE);GROUP QUARTERS TYPE (5 TYPES) (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);GROUP QUARTERS TYPE (5 TYPES) (SOME OTHER RACE ALONE);GROUP QUARTERS TYPE (5 TYPES) (TWO OR MORE RACES);GROUP QUARTERS TYPE (5 TYPES) (WHITE ALONE, NOT HISPANIC OR LATINO);GROUP QUARTERS TYPE (5 TYPES) (HISPANIC OR LATINO);GROUP QUARTERS TYPE (5 TYPES) BY MARITAL STATUS;GROUP QUARTERS TYPE (5 TYPES) BY SCHOOL ENROLLMENT;GROUP QUARTERS TYPE (5 TYPES) BY EDUCATIONAL ATTAINMENT;GROUP QUARTERS TYPE (5 TYPES) BY VETERAN STATUS;GROUP QUARTERS TYPE (5 TYPES) BY AGE BY DISABILITY STATUS;GROUP QUARTERS TYPE (5 TYPES) BY GEOGRAPHICAL MOBILITY IN THE PAST YEAR FOR CURRENT RESIDENCE IN THE UNITED STATES;GROUP QUARTERS TYPE (5 TYPES) BY NATIVITY AND CITIZENSHIP STATUS BY SEX;GROUP QUARTERS TYPE (5 TYPES) BY YEAR OF ENTRY;GROUP QUARTERS TYPE (5 TYPES) BY WORLD REGION OF BIRTH;GROUP QUARTERS TYPE (5 TYPES) BY LANGUAGE SPOKEN AT HOME BY ABILITY TO SPEAK ENGLISH;GROUP QUARTERS TYPE (5 TYPES) BY EMPLOYMENT STATUS;GROUP QUARTERS TYPE (5 TYPES) BY OCCUPATION;AGGREGATE INCOME IN THE PAST 12 MONTHS BY GROUP QUARTERS TYPE (5 TYPES);GROUP QUARTERS TYPE (5 TYPES) BY SEX WITH EARNINGS IN THE PAST 12 MONTHS;AGGREGATE EARNINGS IN THE PAST 12 MONTHS BY GROUP QUARTERS TYPE (5 TYPES) BY SEX;MEDIAN EARNINGS IN THE PAST 12 MONTHS BY GROUP QUARTERS TYPE (5 TYPES) BY SEX;GROUP QUARTERS TYPE (5 TYPES) BY RECEIPT OF FOOD STAMPS/SNAP IN THE PAST 12 MONTHS;HEALTH INSURANCE COVERAGE STATUS BY SEX BY AGE;PRIVATE HEALTH INSURANCE STATUS BY SEX BY AGE;PUBLIC HEALTH INSURANCE STATUS BY SEX BY AGE;TYPES OF HEALTH INSURANCE COVERAGE BY AGE;HEALTH INSURANCE COVERAGE STATUS AND TYPE BY EMPLOYMENT STATUS;HEALTH INSURANCE COVERAGE STATUS AND TYPE BY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS);HEALTH INSURANCE COVERAGE STATUS AND TYPE BY AGE BY EDUCATIONAL ATTAINMENT;HEALTH INSURANCE COVERAGE STATUS AND TYPE BY CITIZENSHIP STATUS;HEALTH INSURANCE COVERAGE STATUS BY SEX BY ENROLLMENT STATUS FOR YOUNG ADULTS AGED 19 TO 25;PRIVATE HEALTH INSURANCE BY SEX BY ENROLLMENT STATUS FOR YOUNG ADULTS AGED 19 TO 25;TYPES OF COMPUTERS IN HOUSEHOLD;PRESENCE AND TYPES OF INTERNET SUBSCRIPTIONS IN HOUSEHOLD;PRESENCE OF A COMPUTER AND TYPE OF INTERNET SUBSCRIPTION IN HOUSEHOLD;HOUSEHOLD INCOME IN THE LAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY PRESENCE AND TYPE OF INTERNET SUBSCRIPTION IN HOUSEHOLD;WOMEN 15 TO 50 YEARS WHO HAD A BIRTH IN THE PAST 12 MONTHS BY MARITAL STATUS (AMERICAN INDIAN AND ALASKA NATIVE ALONE);WOMEN 15 TO 50 YEARS WHO HAD A BIRTH IN THE PAST 12 MONTHS BY MARITAL STATUS (ASIAN ALONE);WOMEN 15 TO 50 YEARS WHO HAD A BIRTH IN THE PAST 12 MONTHS BY MARITAL STATUS (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);WOMEN 15 TO 50 YEARS WHO HAD A BIRTH IN THE PAST 12 MONTHS BY MARITAL STATUS (SOME OTHER RACE ALONE);WOMEN 15 TO 50 YEARS WHO HAD A BIRTH IN THE PAST 12 MONTHS BY MARITAL STATUS (TWO OR MORE RACES);WOMEN 15 TO 50 YEARS WHO HAD A BIRTH IN THE PAST 12 MONTHS BY MARITAL STATUS (WHITE ALONE, NOT HISPANIC OR LATINO);WOMEN 15 TO 50 YEARS WHO HAD A BIRTH IN THE PAST 12 MONTHS BY MARITAL STATUS (HISPANIC OR LATINO);WOMEN 15 TO 50 YEARS WHO HAD A BIRTH IN THE PAST 12 MONTHS BY PRESENCE OF SPOUSE OR UNMARRIED PARTNER;WOMEN 15 TO 50 YEARS WHO HAD A BIRTH IN THE PAST 12 MONTHS BY MARITAL STATUS AND NATIVITY;WOMEN 15 TO 50 YEARS WHO HAD A BIRTH IN THE PAST 12 MONTHS BY MARITAL STATUS AND POVERTY STATUS IN THE PAST 12 MONTHS;WOMEN 16 TO 50 YEARS WHO HAD A BIRTH IN THE PAST 12 MONTHS BY MARITAL STATUS AND LABOR FORCE STATUS;WOMEN 15 TO 50 YEARS WHO HAD A BIRTH IN THE PAST 12 MONTHS BY MARITAL STATUS AND EDUCATIONAL ATTAINMENT;WOMEN 15 TO 50 YEARS WHO HAD A BIRTH IN THE PAST 12 MONTHS BY MARITAL STATUS AND RECEIPT OF PUBLIC ASSISTANCE INCOME IN THE PAST 12 MONTHS;WOMEN 15 TO 50 YEARS WHO HAD A BIRTH IN THE PAST 12 MONTHS BY AGE;SCHOOL ENROLLMENT BY LEVEL OF SCHOOL FOR THE POPULATION 3 YEARS AND OVER;SEX BY SCHOOL ENROLLMENT BY LEVEL OF SCHOOL BY TYPE OF SCHOOL FOR THE POPULATION 3 YEARS AND OVER;SEX BY SCHOOL ENROLLMENT BY TYPE OF SCHOOL BY AGE FOR THE POPULATION 3 YEARS AND OVER;SEX BY COLLEGE OR GRADUATE SCHOOL ENROLLMENT BY TYPE OF SCHOOL BY AGE FOR THE POPULATION 15 YEARS AND OVER;SEX BY SCHOOL ENROLLMENT BY EDUCATIONAL ATTAINMENT BY EMPLOYMENT STATUS FOR THE POPULATION 16 TO 19 YEARS;POVERTY STATUS IN THE PAST 12 MONTHS BY SCHOOL ENROLLMENT BY LEVEL OF SCHOOL FOR THE POPULATION 3 YEARS AND OVER;SCHOOL ENROLLMENT BY DETAILED LEVEL OF SCHOOL FOR THE POPULATION 3 YEARS AND OVER;SCHOOL ENROLLMENT BY DETAILED LEVEL OF SCHOOL FOR THE POPULATION 3 YEARS AND OVER (WHITE ALONE);SCHOOL ENROLLMENT BY DETAILED LEVEL OF SCHOOL FOR THE POPULATION 3 YEARS AND OVER (BLACK OR AFRICAN AMERICAN ALONE);SCHOOL ENROLLMENT BY DETAILED LEVEL OF SCHOOL FOR THE POPULATION 3 YEARS AND OVER (AMERICAN INDIAN AND ALASKA NATIVE ALONE);SCHOOL ENROLLMENT BY DETAILED LEVEL OF SCHOOL FOR THE POPULATION 3 YEARS AND OVER (ASIAN ALONE);SCHOOL ENROLLMENT BY DETAILED LEVEL OF SCHOOL FOR THE POPULATION 3 YEARS AND OVER (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);SCHOOL ENROLLMENT BY DETAILED LEVEL OF SCHOOL FOR THE POPULATION 3 YEARS AND OVER (SOME OTHER RACE ALONE);SCHOOL ENROLLMENT BY DETAILED LEVEL OF SCHOOL FOR THE POPULATION 3 YEARS AND OVER (TWO OR MORE RACES);SCHOOL ENROLLMENT BY DETAILED LEVEL OF SCHOOL FOR THE POPULATION 3 YEARS AND OVER (WHITE ALONE, NOT HISPANIC OR LATINO);SCHOOL ENROLLMENT BY DETAILED LEVEL OF SCHOOL FOR THE POPULATION 3 YEARS AND OVER (HISPANIC OR LATINO);SEX BY AGE BY EDUCATIONAL ATTAINMENT FOR THE POPULATION 18 YEARS AND OVER;SEX BY EDUCATIONAL ATTAINMENT FOR THE POPULATION 25 YEARS AND OVER;EDUCATIONAL ATTAINMENT FOR THE POPULATION 25 YEARS AND OVER;SEX BY AGE BY FIELD OF BACHELOR'S DEGREE FOR FIRST MAJOR FOR THE POPULATION 25 YEARS AND OVER;AGE BY PRESENCE OF A COMPUTER AND TYPES OF INTERNET SUBSCRIPTION IN HOUSEHOLD;EDUCATIONAL ATTAINMENT BY PRESENCE OF A COMPUTER AND TYPES OF INTERNET SUBSCRIPTION IN HOUSEHOLD;LABOR FORCE STATUS BY PRESENCE OF A COMPUTER AND TYPES OF INTERNET SUBSCRIPTION IN HOUSEHOLD;PRESENCE OF A COMPUTER AND TYPE OF INTERNET SUBSCRIPTION IN HOUSEHOLD;PRESENCE OF A COMPUTER AND TYPE OF INTERNET SUBSCRIPTION IN HOUSEHOLD (WHITE ALONE);PRESENCE OF A COMPUTER AND TYPE OF INTERNET SUBSCRIPTION IN HOUSEHOLD (BLACK OR AFRICAN AMERICAN ALONE);PRESENCE OF A COMPUTER AND TYPE OF INTERNET SUBSCRIPTION IN HOUSEHOLD (AMERICAN INDIAN AND ALASKA NATIVE ALONE);PRESENCE OF A COMPUTER AND TYPE OF INTERNET SUBSCRIPTION IN HOUSEHOLD (ASIAN ALONE);PRESENCE OF A COMPUTER AND TYPE OF INTERNET SUBSCRIPTION IN HOUSEHOLD (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);PRESENCE OF A COMPUTER AND TYPE OF INTERNET SUBSCRIPTION IN HOUSEHOLD (SOME OTHER RACE ALONE);PRESENCE OF A COMPUTER AND TYPE OF INTERNET SUBSCRIPTION IN HOUSEHOLD (TWO OR MORE RACES);PRESENCE OF A COMPUTER AND TYPE OF INTERNET SUBSCRIPTION IN HOUSEHOLD (WHITE ALONE, NOT HISPANIC OR LATINO);PRESENCE OF A COMPUTER AND TYPE OF INTERNET SUBSCRIPTION IN HOUSEHOLD (HISPANIC OR LATINO);COMPUTERS IN HOUSEHOLD;INTERNET SUBSCRIPTIONS IN HOUSEHOLD;AGE AND ENROLLMENT STATUS BY COMPUTER OWNERSHIP AND INTERNET SUBSCRIPTION STATUS;CITIZEN, VOTING-AGE POPULATION BY AGE;CITIZEN, VOTING-AGE POPULATION BY EDUCATIONAL ATTAINMENT;CITIZEN, VOTING-AGE POPULATION BY POVERTY STATUS;MEDIAN HOUSEHOLD INCOME FOR HOUSEHOLDS WITH A CITIZEN, VOTING-AGE HOUSEHOLDER (IN 2021 INFLATION-ADJUSTED DOLLARS);UNWEIGHTED HOUSING UNIT SAMPLE;UNWEIGHTED GROUP QUARTERS POPULATION SAMPLE;UNWEIGHTED TOTAL POPULATION SAMPLE;HOUSING UNIT COVERAGE RATE;TOTAL POPULATION COVERAGE RATE BY SEX;TOTAL POPULATION COVERAGE RATE BY WEIGHTING RACE AND HISPANIC OR LATINO GROUPS;GROUP QUARTERS POPULATION COVERAGE RATE;HOUSING UNIT RESPONSE AND NONRESPONSE RATES WITH REASONS FOR NONINTERVIEWS;GROUP QUARTERS POPULATION RESPONSE AND NONRESPONSE RATES WITH REASONS FOR NONINTERVIEWS;OVERALL PERSON CHARACTERISTIC ALLOCATION RATE;OVERALL HOUSING UNIT CHARACTERISTIC ALLOCATION RATE;ALLOCATION OF SEX;ALLOCATION OF AGE;ALLOCATION OF RACE;ALLOCATION OF HISPANIC OR LATINO ORIGIN;ALLOCATION OF CITIZENSHIP STATUS;ALLOCATION OF YEAR OF ENTRY;ALLOCATION OF YEAR OF ENTRY FOR POPULATION BORN OUTSIDE PUERTO RICO;ALLOCATION OF YEAR OF NATURALIZATION;ALLOCATION OF PLACE OF BIRTH;ALLOCATION OF MOBILITY STATUS FOR THE POPULATION 1 YEAR AND OVER;ALLOCATION OF RESIDENCE 1 YEAR AGO FOR THE POPULATION 1 YEAR AND OVER;TOTAL FIELDS OF BACHELOR'S DEGREES REPORTED;LANGUAGE SPOKEN AT HOME BY ABILITY TO SPEAK ENGLISH FOR THE POPULATION 5 YEARS AND OVER;AGE BY LANGUAGE SPOKEN AT HOME FOR THE POPULATION 5 YEARS AND OVER IN LIMITED ENGLISH SPEAKING HOUSEHOLDS;AGE BY LANGUAGE SPOKEN AT HOME BY ABILITY TO SPEAK ENGLISH FOR THE POPULATION 5 YEARS AND OVER;NATIVITY BY LANGUAGE SPOKEN AT HOME BY ABILITY TO SPEAK ENGLISH FOR THE POPULATION 5 YEARS AND OVER;NATIVITY BY LANGUAGE SPOKEN AT HOME BY ABILITY TO SPEAK ENGLISH FOR THE POPULATION 5 YEARS AND OVER (WHITE ALONE);NATIVITY BY LANGUAGE SPOKEN AT HOME BY ABILITY TO SPEAK ENGLISH FOR THE POPULATION 5 YEARS AND OVER (BLACK OR AFRICAN AMERICAN ALONE);NATIVITY BY LANGUAGE SPOKEN AT HOME BY ABILITY TO SPEAK ENGLISH FOR THE POPULATION 5 YEARS AND OVER (AMERICAN INDIAN AND ALASKA NATIVE ALONE);NATIVITY BY LANGUAGE SPOKEN AT HOME BY ABILITY TO SPEAK ENGLISH FOR THE POPULATION 5 YEARS AND OVER (ASIAN ALONE);NATIVITY BY LANGUAGE SPOKEN AT HOME BY ABILITY TO SPEAK ENGLISH FOR THE POPULATION 5 YEARS AND OVER (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);NATIVITY BY LANGUAGE SPOKEN AT HOME BY ABILITY TO SPEAK ENGLISH FOR THE POPULATION 5 YEARS AND OVER (SOME OTHER RACE ALONE);NATIVITY BY LANGUAGE SPOKEN AT HOME BY ABILITY TO SPEAK ENGLISH FOR THE POPULATION 5 YEARS AND OVER (TWO OR MORE RACES);NATIVITY BY LANGUAGE SPOKEN AT HOME BY ABILITY TO SPEAK ENGLISH FOR THE POPULATION 5 YEARS AND OVER (WHITE ALONE, NOT HISPANIC OR LATINO);NATIVITY BY LANGUAGE SPOKEN AT HOME BY ABILITY TO SPEAK ENGLISH FOR THE POPULATION 5 YEARS AND OVER (HISPANIC OR LATINO);LANGUAGE SPOKEN AT HOME BY ABILITY TO SPEAK ENGLISH FOR THE POPULATION 5 YEARS AND OVER (HISPANIC OR LATINO);AGE BY LANGUAGE SPOKEN AT HOME FOR THE POPULATION 5 YEARS AND OVER;CITIZENSHIP STATUS BY AGE BY LANGUAGE SPOKEN AT HOME AND ABILITY TO SPEAK ENGLISH FOR THE POPULATION 5 YEARS AND OVER;POVERTY STATUS IN THE PAST 12 MONTHS BY AGE BY LANGUAGE SPOKEN AT HOME FOR THE POPULATION 5 YEARS AND OVER;EDUCATIONAL ATTAINMENT AND EMPLOYMENT STATUS BY LANGUAGE SPOKEN AT HOME FOR THE POPULATION 25 YEARS AND OVER;POVERTY STATUS IN THE PAST 12 MONTHS BY SEX BY AGE;POVERTY STATUS IN THE PAST 12 MONTHS BY SEX BY AGE (WHITE ALONE);POVERTY STATUS IN THE PAST 12 MONTHS BY SEX BY AGE (BLACK OR AFRICAN AMERICAN ALONE);POVERTY STATUS IN THE PAST 12 MONTHS BY SEX BY AGE (AMERICAN INDIAN AND ALASKA NATIVE ALONE);POVERTY STATUS IN THE PAST 12 MONTHS BY SEX BY AGE (ASIAN ALONE);POVERTY STATUS IN THE PAST 12 MONTHS BY SEX BY AGE (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);POVERTY STATUS IN THE PAST 12 MONTHS BY SEX BY AGE (SOME OTHER RACE ALONE);POVERTY STATUS IN THE PAST 12 MONTHS BY SEX BY AGE (TWO OR MORE RACES);POVERTY STATUS IN THE PAST 12 MONTHS BY SEX BY AGE (WHITE ALONE, NOT HISPANIC OR LATINO);POVERTY STATUS IN THE PAST 12 MONTHS BY SEX BY AGE (HISPANIC OR LATINO);POVERTY STATUS IN THE PAST 12 MONTHS OF INDIVIDUALS BY SEX BY EDUCATIONAL ATTAINMENT;POVERTY STATUS IN THE PAST 12 MONTHS OF INDIVIDUALS BY SEX BY WORK EXPERIENCE;POVERTY STATUS IN THE PAST 12 MONTHS OF INDIVIDUALS BY SEX BY EMPLOYMENT STATUS;POVERTY STATUS IN THE PAST 12 MONTHS OF RELATED CHILDREN UNDER 18 YEARS BY FAMILY TYPE BY AGE OF RELATED CHILDREN UNDER 18 YEARS;POVERTY STATUS IN THE PAST 12 MONTHS OF UNRELATED INDIVIDUALS 15 YEARS AND OVER BY SEX BY AGE;ALLOCATION OF PLACE OF WORK;ALLOCATION OF PRIVATE VEHICLE OCCUPANCY;ALLOCATION OF TIME OF DEPARTURE TO GO TO WORK;ALLOCATION OF TRAVEL TIME TO WORK;ALLOCATION OF MEANS OF TRANSPORTATION TO WORK;ALLOCATION OF VEHICLES AVAILABLE FOR WORKERS;ALLOCATION OF MEANS OF TRANSPORTATION TO WORK FOR WORKPLACE GEOGRAPHY;ALLOCATION OF TIME ARRIVING AT WORK FROM HOME FOR WORKPLACE GEOGRAPHY;ALLOCATION OF TRAVEL TIME TO WORK FOR WORKPLACE GEOGRAPHY;ALLOCATION OF VEHICLES AVAILABLE FOR WORKERS FOR WORKPLACE GEOGRAPHY;ALLOCATION OF RELATIONSHIP;ALLOCATION OF GRANDPARENTS LIVING WITH GRANDCHILDREN UNDER 18 YEARS;ALLOCATION OF GRANDPARENTS RESPONSIBLE FOR GRANDCHILDREN UNDER 18 YEARS;ALLOCATION OF LENGTH OF TIME GRANDPARENT RESPONSIBLE FOR OWN GRANDCHILDREN UNDER 18 YEARS FOR THE POPULATION 30 YEARS AND OVER;ALLOCATION OF MARITAL STATUS FOR THE POPULATION 15 YEARS AND OVER;ALLOCATION OF DIVORCED IN THE PAST 12 MONTHS FOR THE POPULATION 15 YEARS AND OVER;ALLOCATION OF MARRIED IN THE PAST 12 MONTHS FOR THE POPULATION 15 YEARS AND OVER;ALLOCATION OF WIDOWED IN THE PAST 12 MONTHS FOR THE POPULATION 15 YEARS AND OVER;ALLOCATION OF TIMES MARRIED FOR THE POPULATION 15 YEARS AND OVER;ALLOCATION OF YEAR LAST MARRIED FOR THE POPULATION 15 YEARS AND OVER;ALLOCATION OF MARITAL STATUS FOR FEMALES 15 TO 50 YEARS;ALLOCATION OF FERTILITY OF WOMEN 15 TO 50 YEARS;ALLOCATION OF SCHOOL ENROLLMENT FOR THE POPULATION 3 YEARS AND OVER;ALLOCATION OF GRADE ENROLLED FOR THE POPULATION 3 YEARS AND OVER ENROLLED IN SCHOOL;ALLOCATION OF EDUCATIONAL ATTAINMENT FOR THE POPULATION 25 YEARS AND OVER;ALLOCATION OF FIELD OF DEGREE FOR POPULATION 25 YEARS AND OVER;ALLOCATION OF LANGUAGE STATUS FOR THE POPULATION 5 YEARS AND OVER;ALLOCATION OF LANGUAGE SPOKEN AT HOME FOR THE POPULATION 5 YEARS AND OVER;ALLOCATION OF ABILITY TO SPEAK ENGLISH FOR THE POPULATION 5 YEARS AND OVER;ALLOCATION OF POVERTY STATUS IN THE PAST 12 MONTHS FOR UNRELATED INDIVIDUALS;ALLOCATION OF POVERTY STATUS IN THE PAST 12 MONTHS FOR FAMILIES;ALLOCATION OF DISABILITY ITEMS FOR THE CIVILIAN NONINSTITUTIONALIZED POPULATION;ALLOCATION OF HEARING DIFFICULTY FOR THE CIVILIAN NONINSTITUTIONALIZED POPULATION;ALLOCATION OF VISION DIFFICULTY FOR THE CIVILIAN NONINSTITUTIONALIZED POPULATION;ALLOCATION OF COGNITIVE DIFFICULTY FOR THE CIVILIAN NONINSTITUTIONALIZED POPULATION 5 YEARS AND OVER;ALLOCATION OF AMBULATORY DIFFICULTY FOR THE CIVILIAN NONINSTITUTIONALIZED POPULATION 5 YEARS AND OVER;ALLOCATION OF SELF-CARE DIFFICULTY FOR THE CIVILIAN NONINSTITUTIONALIZED POPULATION 5 YEARS AND OVER;AGE BY ALLOCATION OF INDEPENDENT LIVING DIFFICULTY FOR THE CIVILIAN NONINSTITUTIONALIZED POPULATION 15 YEARS AND OVER;ALLOCATION OF INDIVIDUALS' INCOME IN THE PAST 12 MONTHS FOR THE POPULATION 15 YEARS AND OVER - PERCENT OF INCOME ALLOCATED;AGGREGATE INCOME DEFICIT (DOLLARS) IN THE PAST 12 MONTHS OF UNRELATED INDIVIDUALS BY SEX;POVERTY STATUS BY WORK EXPERIENCE OF UNRELATED INDIVIDUALS BY HOUSEHOLDER STATUS;POVERTY STATUS IN THE PAST 12 MONTHS OF FAMILIES BY FAMILY TYPE BY PRESENCE OF RELATED CHILDREN UNDER 18 YEARS BY AGE OF RELATED CHILDREN;POVERTY STATUS IN THE PAST 12 MONTHS OF FAMILIES BY FAMILY TYPE BY PRESENCE OF RELATED CHILDREN UNDER 18 YEARS BY AGE OF RELATED CHILDREN (WHITE ALONE HOUSEHOLDER);POVERTY STATUS IN THE PAST 12 MONTHS OF FAMILIES BY FAMILY TYPE BY PRESENCE OF RELATED CHILDREN UNDER 18 YEARS BY AGE OF RELATED CHILDREN (BLACK OR AFRICAN AMERICAN ALONE HOUSEHOLDER);POVERTY STATUS IN THE PAST 12 MONTHS OF FAMILIES BY FAMILY TYPE BY PRESENCE OF RELATED CHILDREN UNDER 18 YEARS BY AGE OF RELATED CHILDREN (AMERICAN INDIAN AND ALASKA NATIVE ALONE);POVERTY STATUS IN THE PAST 12 MONTHS OF FAMILIES BY FAMILY TYPE BY PRESENCE OF RELATED CHILDREN UNDER 18 YEARS BY AGE OF RELATED CHILDREN (ASIAN ALONE HOUSEHOLDER);POVERTY STATUS IN THE PAST 12 MONTHS OF FAMILIES BY FAMILY TYPE BY PRESENCE OF RELATED CHILDREN UNDER 18 YEARS BY AGE OF RELATED CHILDREN (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE HOUSEHOLDER);POVERTY STATUS IN THE PAST 12 MONTHS OF FAMILIES BY FAMILY TYPE BY PRESENCE OF RELATED CHILDREN UNDER 18 YEARS BY AGE OF RELATED CHILDREN (SOME OTHER RACE ALONE HOUSEHOLDER);POVERTY STATUS IN THE PAST 12 MONTHS OF FAMILIES BY FAMILY TYPE BY PRESENCE OF RELATED CHILDREN UNDER 18 YEARS BY AGE OF RELATED CHILDREN (TWO OR MORE RACES HOUSEHOLDER);POVERTY STATUS IN THE PAST 12 MONTHS OF FAMILIES BY FAMILY TYPE BY PRESENCE OF RELATED CHILDREN UNDER 18 YEARS BY AGE OF RELATED CHILDREN (WHITE ALONE, NOT HISPANIC OR LATINO HOUSEHOLDER);POVERTY STATUS IN THE PAST 12 MONTHS OF FAMILIES BY FAMILY TYPE BY PRESENCE OF RELATED CHILDREN UNDER 18 YEARS BY AGE OF RELATED CHILDREN (HISPANIC OR LATINO);AGGREGATE INCOME DEFICIT (DOLLARS) IN THE PAST 12 MONTHS FOR FAMILIES BY FAMILY TYPE;POVERTY STATUS IN THE PAST 12 MONTHS OF FAMILIES BY HOUSEHOLD TYPE BY NUMBER OF RELATED CHILDREN UNDER 18 YEARS;POVERTY STATUS IN THE PAST 12 MONTHS OF FAMILIES BY HOUSEHOLD TYPE BY NUMBER OF PERSONS IN FAMILY;POVERTY STATUS IN THE PAST 12 MONTHS OF FAMILIES BY HOUSEHOLD TYPE BY NUMBER OF WORKERS IN FAMILY;POVERTY STATUS IN THE PAST 12 MONTHS OF FAMILIES BY FAMILY TYPE BY SOCIAL SECURITY INCOME BY SUPPLEMENTAL SECURITY INCOME (SSI) AND CASH PUBLIC ASSISTANCE INCOME;POVERTY STATUS IN THE PAST 12 MONTHS OF FAMILIES BY FAMILY TYPE BY WORK EXPERIENCE OF HOUSEHOLDER AND SPOUSE;POVERTY STATUS IN THE PAST 12 MONTHS BY HOUSEHOLD TYPE BY AGE OF HOUSEHOLDER;POVERTY STATUS IN THE PAST 12 MONTHS OF FAMILIES BY HOUSEHOLD TYPE BY EDUCATIONAL ATTAINMENT OF HOUSEHOLDER;POVERTY STATUS IN THE PAST 12 MONTHS OF FAMILIES BY HOUSEHOLD TYPE BY TENURE;POVERTY STATUS IN THE PAST 12 MONTHS BY AGE;POVERTY STATUS IN THE PAST 12 MONTHS BY AGE (WHITE ALONE);POVERTY STATUS IN THE PAST 12 MONTHS BY AGE (BLACK OR AFRICAN AMERICAN ALONE);POVERTY STATUS IN THE PAST 12 MONTHS BY AGE (AMERICAN INDIAN AND ALASKA NATIVE ALONE);POVERTY STATUS IN THE PAST 12 MONTHS BY AGE (ASIAN ALONE);POVERTY STATUS IN THE PAST 12 MONTHS BY AGE (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);POVERTY STATUS IN THE PAST 12 MONTHS BY AGE (SOME OTHER RACE ALONE);POVERTY STATUS IN THE PAST 12 MONTHS BY AGE (TWO OR MORE RACES);POVERTY STATUS IN THE PAST 12 MONTHS BY AGE (WHITE ALONE, NOT HISPANIC OR LATINO);POVERTY STATUS IN THE PAST 12 MONTHS BY AGE (HISPANIC OR LATINO);POVERTY STATUS OF INDIVIDUALS IN THE PAST 12 MONTHS BY LIVING ARRANGEMENT;ALLOCATION OF HOUSEHOLD INCOME IN THE PAST 12 MONTHS - PERCENT OF INCOME ALLOCATED;ALLOCATION OF FAMILY INCOME IN THE PAST 12 MONTHS -- PERCENT OF INCOME ALLOCATED;ALLOCATION OF NONFAMILY HOUSEHOLD INCOME IN THE PAST 12 MONTHS -- PERCENT OF INCOME ALLOCATED;ALLOCATION OF EARNINGS IN THE PAST 12 MONTHS FOR THE POPULATION 16 YEARS AND OVER - PERCENT OF EARNINGS ALLOCATED;ALLOCATION OF VETERAN STATUS FOR THE POPULATION 18 YEARS AND OVER;ALLOCATION OF PERIOD OF MILITARY SERVICE FOR CIVILIAN VETERANS 18 YEARS AND OVER;ALLOCATION OF FOOD STAMPS/SNAP RECEIPT;ALLOCATION OF EMPLOYMENT STATUS FOR THE POPULATION 16 YEARS AND OVER;ALLOCATION OF WORK STATUS IN THE PAST 12 MONTHS FOR THE POPULATION 16 YEARS AND OVER;ALLOCATION OF USUAL HOURS WORKED PER WEEK IN THE PAST 12 MONTHS FOR THE POPULATION 16 YEARS AND OVER;ALLOCATION OF WEEKS WORKED IN THE PAST 12 MONTHS FOR THE POPULATION 16 YEARS AND OVER;ALLOCATION OF INDUSTRY FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;ALLOCATION OF OCCUPATION FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;ALLOCATION OF CLASS OF WORKER FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;ALLOCATION OF INDUSTRY FOR THE FULL-TIME, YEAR-ROUND CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;ALLOCATION OF OCCUPATION FOR THE FULL-TIME, YEAR-ROUND CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;ALLOCATION OF CLASS OF WORKER FOR THE FULL-TIME, YEAR-ROUND CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;ALLOCATION OF KITCHEN FACILITIES;ALLOCATION OF HOUSE HEATING FUEL;ALLOCATION OF VEHICLES AVAILABLE;ALLOCATION OF TELEPHONE SERVICE AVAILABLE;ALLOCATION OF MEALS INCLUDED IN RENT;ALLOCATION OF CONTRACT RENT;ALLOCATION OF RENT ASKED;ALLOCATION OF GROSS RENT;ALLOCATION OF VALUE;ALLOCATION OF TENURE;ALLOCATION OF PRICE ASKED;ALLOCATION OF MORTGAGE STATUS;ALLOCATION OF MORTGAGE STATUS AND SELECTED MONTHLY OWNER COSTS;ALLOCATION OF SELECTED MONTHLY OWNER COSTS FOR OWNER-OCCUPIED HOUSING UNITS;ALLOCATION OF VACANCY STATUS;ALLOCATION OF ROOMS;ALLOCATION OF UNITS IN STRUCTURE;ALLOCATION OF YEAR STRUCTURE BUILT;ALLOCATION OF YEAR HOUSEHOLDER MOVED INTO UNIT;ALLOCATION OF BEDROOMS;ALLOCATION OF PLUMBING FACILITIES;ALLOCATION OF HEALTH INSURANCE COVERAGE;ALLOCATION OF PRIVATE HEALTH INSURANCE;ALLOCATION OF PUBLIC HEALTH INSURANCE;ALLOCATION OF EMPLOYER-BASED HEALTH INSURANCE;ALLOCATION OF DIRECT-PURCHASE HEALTH INSURANCE;ALLOCATION OF MEDICARE COVERAGE;RATIO OF INCOME TO POVERTY LEVEL IN THE PAST 12 MONTHS OF FAMILIES BY FAMILY TYPE BY PRESENCE OF RELATED CHILDREN UNDER 18 YEARS BY AGE OF RELATED CHILDREN;POVERTY STATUS IN THE PAST 12 MONTHS OF FAMILIES BY HOUSEHOLD TYPE BY NUMBER OF OWN CHILDREN UNDER 18 YEARS;AGE BY RATIO OF INCOME TO POVERTY LEVEL IN THE PAST 12 MONTHS;POVERTY STATUS IN THE PAST 12 MONTHS BY NATIVITY;RATIO OF INCOME TO POVERTY LEVEL OF FAMILIES IN THE PAST 12 MONTHS;POVERTY STATUS IN THE PAST 12 MONTHS OF PEOPLE IN HOUSING UNITS;SEX BY AGE BY DISABILITY STATUS;AGE BY DISABILITY STATUS (WHITE ALONE);AGE BY DISABILITY STATUS (BLACK OR AFRICAN AMERICAN ALONE);AGE BY DISABILITY STATUS (AMERICAN INDIAN AND ALASKA NATIVE ALONE);AGE BY DISABILITY STATUS (ASIAN ALONE);AGE BY DISABILITY STATUS (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);AGE BY DISABILITY STATUS (SOME OTHER RACE ALONE);AGE BY DISABILITY STATUS (TWO OR MORE RACES);AGE BY DISABILITY STATUS (WHITE ALONE, NOT HISPANIC OR LATINO);AGE BY DISABILITY STATUS (HISPANIC OR LATINO);SEX BY AGE BY HEARING DIFFICULTY;SEX BY AGE BY VISION DIFFICULTY;SEX BY AGE BY COGNITIVE DIFFICULTY;SEX BY AGE BY AMBULATORY DIFFICULTY;SEX BY AGE BY SELF-CARE DIFFICULTY;SEX BY AGE BY INDEPENDENT LIVING DIFFICULTY;AGE BY DISABILITY STATUS BY HEALTH INSURANCE COVERAGE STATUS;MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY DISABILITY STATUS BY SEX FOR THE CIVILIAN NONINSTITUTIONALIZED POPULATION 16 YEARS AND OVER WITH EARNINGS;HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS);HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (WHITE ALONE HOUSEHOLDER);HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (BLACK OR AFRICAN AMERICAN ALONE HOUSEHOLDER);HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (AMERICAN INDIAN AND ALASKA NATIVE ALONE HOUSEHOLDER);HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (ASIAN ALONE HOUSEHOLDER);HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE HOUSEHOLDER);HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (SOME OTHER RACE ALONE HOUSEHOLDER);HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (TWO OR MORE RACES HOUSEHOLDER);HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (WHITE ALONE, NOT HISPANIC OR LATINO HOUSEHOLDER);HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (HISPANIC OR LATINO HOUSEHOLDER);MEDIAN HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS);MEDIAN HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (WHITE ALONE HOUSEHOLDER);MEDIAN HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (BLACK OR AFRICAN AMERICAN ALONE HOUSEHOLDER);ALLOCATION OF MEDICAID/MEANS-TESTED PUBLIC COVERAGE;ALLOCATION OF TRICARE/MILITARY HEALTH COVERAGE;ALLOCATION OF VA HEALTH CARE;ALLOCATION OF HOUSEHOLD INTERNET ACCESS;ALLOCATION OF HOUSEHOLD COMPUTER TYPE;ALLOCATION OF HOUSEHOLD INTERNET SUBSCRIPTION TYPE;DETAILED RACE;SEX BY EDUCATIONAL ATTAINMENT FOR THE POPULATION 25 YEARS AND OVER (WHITE ALONE);SEX BY EDUCATIONAL ATTAINMENT FOR THE POPULATION 25 YEARS AND OVER (BLACK OR AFRICAN AMERICAN ALONE);SEX BY EDUCATIONAL ATTAINMENT FOR THE POPULATION 25 YEARS AND OVER (AMERICAN INDIAN AND ALASKA NATIVE ALONE);SEX BY EDUCATIONAL ATTAINMENT FOR THE POPULATION 25 YEARS AND OVER (ASIAN ALONE);SEX BY EDUCATIONAL ATTAINMENT FOR THE POPULATION 25 YEARS AND OVER (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);SEX BY EDUCATIONAL ATTAINMENT FOR THE POPULATION 25 YEARS AND OVER (SOME OTHER RACE ALONE);SEX BY EDUCATIONAL ATTAINMENT FOR THE POPULATION 25 YEARS AND OVER (TWO OR MORE RACES);SEX BY EDUCATIONAL ATTAINMENT FOR THE POPULATION 25 YEARS AND OVER (WHITE ALONE, NOT HISPANIC OR LATINO);SEX BY EDUCATIONAL ATTAINMENT FOR THE POPULATION 25 YEARS AND OVER (HISPANIC OR LATINO);FIELD OF BACHELOR'S DEGREE FOR FIRST MAJOR FOR THE POPULATION 25 YEARS AND OVER;FIELD OF BACHELOR'S DEGREE FOR FIRST MAJOR THE POPULATION 25 YEARS AND OVER (WHITE ALONE);FIELD OF BACHELOR'S DEGREE FOR FIRST MAJOR THE POPULATION 25 YEARS AND OVER (BLACK OR AFRICAN AMERICAN ALONE);FIELD OF BACHELOR'S DEGREE FOR FIRST MAJOR THE POPULATION 25 YEARS AND OVER (AMERICAN INDIAN AND ALASKA NATIVE ALONE);FIELD OF BACHELOR'S DEGREE FOR FIRST MAJOR THE POPULATION 25 YEARS AND OVER (ASIAN ALONE);FIELD OF BACHELOR'S DEGREE FOR FIRST MAJOR THE POPULATION 25 YEARS AND OVER (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);FIELD OF BACHELOR'S DEGREE FOR FIRST MAJOR THE POPULATION 25 YEARS AND OVER (SOME OTHER RACE ALONE);FIELD OF BACHELOR'S DEGREE FOR FIRST MAJOR THE POPULATION 25 YEARS AND OVER (TWO OR MORE RACES);FIELD OF BACHELOR'S DEGREE FOR FIRST MAJOR THE POPULATION 25 YEARS AND OVER (WHITE ALONE, NOT HISPANIC OR LATINO);FIELD OF BACHELOR'S DEGREE FOR FIRST MAJOR THE POPULATION 25 YEARS AND OVER (HISPANIC OR LATINO);LANGUAGE SPOKEN AT HOME FOR THE POPULATION 5 YEARS AND OVER;HOUSEHOLD LANGUAGE BY HOUSEHOLD LIMITED ENGLISH SPEAKING STATUS;RATIO OF INCOME TO POVERTY LEVEL IN THE PAST 12 MONTHS;AGE BY NUMBER OF DISABILITIES;EMPLOYMENT STATUS BY DISABILITY STATUS;WORK EXPERIENCE BY DISABILITY STATUS;AGE BY DISABILITY STATUS BY POVERTY STATUS;RATIO OF INCOME TO POVERTY LEVEL IN THE PAST 12 MONTHS BY DISABILITY STATUS;SEX BY AGE BY VETERAN STATUS FOR THE CIVILIAN POPULATION 18 YEARS AND OVER (WHITE ALONE);SEX BY AGE BY VETERAN STATUS FOR THE CIVILIAN POPULATION 18 YEARS AND OVER (BLACK OR AFRICAN AMERICAN ALONE);SEX BY AGE BY VETERAN STATUS FOR THE CIVILIAN POPULATION 18 YEARS AND OVER (AMERICAN INDIAN AND ALASKA NATIVE ALONE);MEDIAN HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (AMERICAN INDIAN AND ALASKA NATIVE ALONE HOUSEHOLDER);MEDIAN HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (ASIAN ALONE HOUSEHOLDER);MEDIAN HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE HOUSEHOLDER);MEDIAN HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (SOME OTHER RACE ALONE HOUSEHOLDER);MEDIAN HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (TWO OR MORE RACES HOUSEHOLDER);MEDIAN HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (WHITE ALONE, NOT HISPANIC OR LATINO HOUSEHOLDER);MEDIAN HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (HISPANIC OR LATINO HOUSEHOLDER);MEDIAN HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY HOUSEHOLD SIZE;AGGREGATE HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS);AGGREGATE HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (WHITE ALONE HOUSEHOLDER);AGGREGATE HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (BLACK OR AFRICAN AMERICAN ALONE HOUSEHOLDER);AGGREGATE HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (AMERICAN INDIAN AND ALASKA NATIVE ALONE HOUSEHOLDER);AGGREGATE HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (ASIAN ALONE HOUSEHOLDER);AGGREGATE HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE HOUSEHOLDER);AGGREGATE HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (SOME OTHER RACE ALONE HOUSEHOLDER);AGGREGATE HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (TWO OR MORE RACES HOUSEHOLDER);AGGREGATE HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (WHITE ALONE, NOT HISPANIC OR LATINO HOUSEHOLDER);AGGREGATE HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (HISPANIC OR LATINO HOUSEHOLDER);AGE OF HOUSEHOLDER BY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS);AGE OF HOUSEHOLDER BY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (WHITE ALONE HOUSEHOLDER);AGE OF HOUSEHOLDER BY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (BLACK OR AFRICAN AMERICAN ALONE HOUSEHOLDER);AGE OF HOUSEHOLDER BY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (AMERICAN INDIAN AND ALASKA NATIVE ALONE HOUSEHOLDER);AGE OF HOUSEHOLDER BY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (ASIAN ALONE HOUSEHOLDER);AGE OF HOUSEHOLDER BY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE HOUSEHOLDER);AGE OF HOUSEHOLDER BY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (SOME OTHER RACE ALONE HOUSEHOLDER);AGE OF HOUSEHOLDER BY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (TWO OR MORE RACES HOUSEHOLDER);AGE OF HOUSEHOLDER BY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (WHITE ALONE, NOT HISPANIC OR LATINO HOUSEHOLDER);AGE OF HOUSEHOLDER BY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (HISPANIC OR LATINO HOUSEHOLDER);MEDIAN HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY AGE OF HOUSEHOLDER;AGGREGATE HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY AGE OF HOUSEHOLDER;SEX BY AGE BY VETERAN STATUS FOR THE CIVILIAN POPULATION 18 YEARS AND OVER (ASIAN ALONE);SEX BY AGE BY VETERAN STATUS FOR THE CIVILIAN POPULATION 18 YEARS AND OVER (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);SEX BY AGE BY VETERAN STATUS FOR THE CIVILIAN POPULATION 18 YEARS AND OVER (SOME OTHER RACE ALONE);SEX BY AGE BY VETERAN STATUS FOR THE CIVILIAN POPULATION 18 YEARS AND OVER (TWO OR MORE RACES);SEX BY AGE BY VETERAN STATUS FOR THE CIVILIAN POPULATION 18 YEARS AND OVER (WHITE ALONE, NOT HISPANIC OR LATINO);SEX BY AGE BY VETERAN STATUS FOR THE CIVILIAN POPULATION 18 YEARS AND OVER (HISPANIC OR LATINO);AGE BY VETERAN STATUS BY POVERTY STATUS IN THE PAST 12 MONTHS BY DISABILITY STATUS FOR THE CIVILIAN POPULATION 18 YEARS AND OVER;SEX BY AGE BY EMPLOYMENT STATUS FOR THE POPULATION 16 YEARS AND OVER (WHITE ALONE);SEX BY AGE BY EMPLOYMENT STATUS FOR THE POPULATION 16 YEARS AND OVER (BLACK OR AFRICAN AMERICAN ALONE);SEX BY AGE BY EMPLOYMENT STATUS FOR THE POPULATION 16 YEARS AND OVER (AMERICAN INDIAN AND ALASKA NATIVE ALONE);SEX BY AGE BY EMPLOYMENT STATUS FOR THE POPULATION 16 YEARS AND OVER (ASIAN ALONE);SEX BY AGE BY EMPLOYMENT STATUS FOR THE POPULATION 16 YEARS AND OVER (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);SEX BY AGE BY EMPLOYMENT STATUS FOR THE POPULATION 16 YEARS AND OVER (SOME OTHER RACE ALONE);SEX BY AGE BY EMPLOYMENT STATUS FOR THE POPULATION 16 YEARS AND OVER (TWO OR MORE RACES);SEX BY AGE BY EMPLOYMENT STATUS FOR THE POPULATION 16 YEARS AND OVER (WHITE ALONE, NOT HISPANIC OR LATINO);SEX BY AGE BY EMPLOYMENT STATUS FOR THE POPULATION 16 YEARS AND OVER (HISPANIC OR LATINO);SEX BY OCCUPATION FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;SEX BY OCCUPATION FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER (WHITE ALONE);SEX BY OCCUPATION FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER (BLACK OR AFRICAN AMERICAN ALONE);SEX BY OCCUPATION FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER (AMERICAN INDIAN AND ALASKA NATIVE ALONE);SEX BY OCCUPATION FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER (ASIAN ALONE);SEX BY OCCUPATION FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);SEX BY OCCUPATION FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER (SOME OTHER RACE ALONE);SEX BY OCCUPATION FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER (TWO OR MORE RACES);SEX BY OCCUPATION FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER (WHITE ALONE, NOT HISPANIC OR LATINO);SEX BY OCCUPATION FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER (HISPANIC OR LATINO);SEX BY OCCUPATION FOR THE FULL-TIME, YEAR-ROUND CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;SEX BY INDUSTRY FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;SEX BY INDUSTRY FOR THE FULL-TIME, YEAR-ROUND CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;INDUSTRY BY OCCUPATION FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;OCCUPATION BY CLASS OF WORKER FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;INDUSTRY BY CLASS OF WORKER FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;HEALTH INSURANCE COVERAGE STATUS BY AGE (WHITE ALONE);HEALTH INSURANCE COVERAGE STATUS BY AGE (BLACK OR AFRICAN AMERICAN ALONE);EARNINGS IN THE PAST 12 MONTHS FOR HOUSEHOLDS;WAGE OR SALARY INCOME IN THE PAST 12 MONTHS FOR HOUSEHOLDS;SELF-EMPLOYMENT INCOME IN THE PAST 12 MONTHS FOR HOUSEHOLDS;INTEREST, DIVIDENDS, OR NET RENTAL INCOME IN THE PAST 12 MONTHS FOR HOUSEHOLDS;SOCIAL SECURITY INCOME IN THE PAST 12 MONTHS FOR HOUSEHOLDS;SUPPLEMENTAL SECURITY INCOME (SSI) IN THE PAST 12 MONTHS FOR HOUSEHOLDS;PUBLIC ASSISTANCE INCOME IN THE PAST 12 MONTHS FOR HOUSEHOLDS;PUBLIC ASSISTANCE INCOME OR FOOD STAMPS/SNAP IN THE PAST 12 MONTHS FOR HOUSEHOLDS;RETIREMENT INCOME IN THE PAST 12 MONTHS FOR HOUSEHOLDS;OTHER TYPES OF INCOME IN THE PAST 12 MONTHS FOR HOUSEHOLDS;AGGREGATE EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR HOUSEHOLDS;AGGREGATE WAGE OR SALARY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR HOUSEHOLDS;AGGREGATE SELF-EMPLOYMENT INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR HOUSEHOLDS;AGGREGATE INTEREST, DIVIDENDS, OR NET RENTAL INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR HOUSEHOLDS;AGGREGATE SOCIAL SECURITY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR HOUSEHOLDS;AGGREGATE SUPPLEMENTAL SECURITY INCOME (SSI) IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR HOUSEHOLDS;AGGREGATE PUBLIC ASSISTANCE INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR HOUSEHOLDS;AGGREGATE RETIREMENT INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR HOUSEHOLDS;AGGREGATE OTHER TYPES OF INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR HOUSEHOLDS;HOUSEHOLD INCOME QUINTILE UPPER LIMITS;MEAN HOUSEHOLD INCOME OF QUINTILES;SHARES OF AGGREGATE HOUSEHOLD INCOME BY QUINTILE;GINI INDEX OF INCOME INEQUALITY;FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS);FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (WHITE ALONE HOUSEHOLDER);FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (BLACK OR AFRICAN AMERICAN ALONE HOUSEHOLDER);FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (AMERICAN INDIAN AND ALASKA NATIVE ALONE HOUSEHOLDER);FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (ASIAN ALONE HOUSEHOLDER);FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE HOUSEHOLDER);FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (SOME OTHER RACE ALONE HOUSEHOLDER);FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (TWO OR MORE RACES HOUSEHOLDER);FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (WHITE ALONE, NOT HISPANIC OR LATINO HOUSEHOLDER);FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (HISPANIC OR LATINO HOUSEHOLDER);MEDIAN FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS);MEDIAN FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (WHITE ALONE HOUSEHOLDER);MEDIAN FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (BLACK OR AFRICAN AMERICAN ALONE HOUSEHOLDER);HEALTH INSURANCE COVERAGE STATUS BY AGE (AMERICAN INDIAN AND ALASKA NATIVE ALONE);HEALTH INSURANCE COVERAGE STATUS BY AGE (ASIAN ALONE);HEALTH INSURANCE COVERAGE STATUS BY AGE (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);HEALTH INSURANCE COVERAGE STATUS BY AGE (SOME OTHER RACE ALONE);HEALTH INSURANCE COVERAGE STATUS BY AGE (TWO OR MORE RACES);HEALTH INSURANCE COVERAGE STATUS BY AGE (WHITE ALONE, NOT HISPANIC OR LATINO);HEALTH INSURANCE COVERAGE STATUS BY AGE (HISPANIC OR LATINO);EMPLOYER-BASED HEALTH INSURANCE BY SEX BY AGE;DIRECT-PURCHASE HEALTH INSURANCE BY SEX BY AGE;MEDICARE COVERAGE BY SEX BY AGE;MEDICAID/MEANS-TESTED PUBLIC COVERAGE BY SEX BY AGE;TRICARE/MILITARY HEALTH COVERAGE BY SEX BY AGE;VA HEALTH CARE BY SEX BY AGE;HEALTH INSURANCE COVERAGE STATUS AND TYPE BY WORK EXPERIENCE;PRIVATE HEALTH INSURANCE BY WORK EXPERIENCE;PUBLIC HEALTH INSURANCE BY WORK EXPERIENCE;HEALTH INSURANCE COVERAGE STATUS BY RATIO OF INCOME TO POVERTY LEVEL IN THE PAST 12 MONTHS BY AGE;PRIVATE HEALTH INSURANCE BY RATIO OF INCOME TO POVERTY LEVEL IN THE PAST 12 MONTHS BY AGE;PUBLIC HEALTH INSURANCE BY RATIO OF INCOME TO POVERTY LEVEL IN THE PAST 12 MONTHS BY AGE;HEALTH INSURANCE COVERAGE STATUS BY LIVING ARRANGEMENT;MEDIAN FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (AMERICAN INDIAN AND ALASKA NATIVE ALONE HOUSEHOLDER);MEDIAN FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (ASIAN ALONE HOUSEHOLDER);MEDIAN FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE HOUSEHOLDER);MEDIAN FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (SOME OTHER RACE ALONE HOUSEHOLDER);MEDIAN FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (TWO OR MORE RACES);MEDIAN FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (WHITE ALONE, NOT HISPANIC OR LATINO HOUSEHOLDER);MEDIAN FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (HISPANIC OR LATINO HOUSEHOLDER);MEDIAN FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY FAMILY SIZE;MEDIAN FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY NUMBER OF EARNERS IN FAMILY;NUMBER OF EARNERS IN FAMILY;FAMILY SIZE BY CASH PUBLIC ASSISTANCE INCOME OR HOUSEHOLDS RECEIVING FOOD STAMPS/SNAP BENEFITS IN THE PAST 12 MONTHS;MEDIAN FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY PRESENCE OF OWN CHILDREN UNDER 18 YEARS;MEDIAN FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY FAMILY TYPE BY PRESENCE OF OWN CHILDREN UNDER 18 YEARS;AGGREGATE FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS);AGGREGATE FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY FAMILY TYPE BY PRESENCE OF OWN CHILDREN UNDER 18 YEARS;AGGREGATE FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY NUMBER OF WORKERS IN FAMILY;AGGREGATE FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY FAMILY TYPE BY AGE OF HOUSEHOLDER;FAMILY TYPE BY PRESENCE OF OWN CHILDREN UNDER 18 YEARS BY FAMILY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS);NONFAMILY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS);MEDIAN NONFAMILY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS);MEDIAN NONFAMILY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (WHITE ALONE HOUSEHOLDER);MEDIAN NONFAMILY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (BLACK OR AFRICAN AMERICAN ALONE HOUSEHOLDER);MEDIAN NONFAMILY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (AMERICAN INDIAN AND ALASKA NATIVE ALONE HOUSEHOLDER);MEDIAN NONFAMILY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (ASIAN ALONE HOUSEHOLDER);MEDIAN NONFAMILY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE HOUSEHOLDER);MEDIAN NONFAMILY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (SOME OTHER RACE ALONE HOUSEHOLDER);MEDIAN NONFAMILY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (TWO OR MORE RACES HOUSEHOLDER);MEDIAN NONFAMILY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (WHITE ALONE, NOT HISPANIC OR LATINO HOUSEHOLDER);MEDIAN NONFAMILY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (HISPANIC OR LATINO HOUSEHOLDER);AGGREGATE NONFAMILY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS);MEDIAN NONFAMILY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY SEX OF HOUSEHOLDER BY LIVING ALONE BY AGE OF HOUSEHOLDER;SEX BY AGE;SEX BY AGE (WHITE ALONE);SEX BY AGE (BLACK OR AFRICAN AMERICAN ALONE);SEX BY AGE (AMERICAN INDIAN AND ALASKA NATIVE ALONE);SEX BY AGE (ASIAN ALONE);SEX BY AGE (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);SEX BY AGE (SOME OTHER RACE ALONE);SEX BY AGE (TWO OR MORE RACES);SEX BY AGE (WHITE ALONE, NOT HISPANIC OR LATINO);SEX BY AGE (HISPANIC OR LATINO);MEDIAN AGE BY SEX;MEDIAN AGE BY SEX (WHITE ALONE);MEDIAN AGE BY SEX (BLACK OR AFRICAN AMERICAN ALONE);MEDIAN AGE BY SEX (AMERICAN INDIAN AND ALASKA NATIVE ALONE);MEDIAN AGE BY SEX (ASIAN ALONE);MEDIAN AGE BY SEX (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);MEDIAN AGE BY SEX (SOME OTHER RACE ALONE);MEDIAN AGE BY SEX (TWO OR MORE RACES);MEDIAN AGE BY SEX (WHITE ALONE, NOT HISPANIC OR LATINO);MEDIAN AGE BY SEX (HISPANIC OR LATINO);TOTAL POPULATION;RACE;WHITE ALONE OR IN COMBINATION WITH ONE OR MORE OTHER RACES;BLACK OR AFRICAN AMERICAN ALONE OR IN COMBINATION WITH ONE OR MORE OTHER RACES;AMERICAN INDIAN AND ALASKA NATIVE ALONE OR IN COMBINATION WITH ONE OR MORE OTHER RACES;ASIAN ALONE OR IN COMBINATION WITH ONE OR MORE OTHER RACES;NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE OR IN COMBINATION WITH ONE OR MORE OTHER RACES;SOME OTHER RACE ALONE OR IN COMBINATION WITH ONE OR MORE OTHER RACES;AMERICAN INDIAN AND ALASKA NATIVE ALONE FOR SELECTED TRIBAL GROUPINGS;ASIAN ALONE BY SELECTED GROUPS;NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE BY SELECTED GROUPS;AMERICAN INDIAN AND ALASKA NATIVE (AIAN) ALONE OR IN ANY COMBINATION BY SELECTED TRIBAL GROUPINGS;ASIAN ALONE OR IN ANY COMBINATION BY SELECTED GROUPS;NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE OR IN ANY COMBINATION BY SELECTED GROUPS;HISPANIC OR LATINO ORIGIN BY SPECIFIC ORIGIN;HISPANIC OR LATINO ORIGIN BY RACE;HISPANIC OR LATINO ORIGIN;PEOPLE REPORTING SINGLE ANCESTRY;PEOPLE REPORTING MULTIPLE ANCESTRY;PEOPLE REPORTING ANCESTRY;ANCESTRY;NATIVITY AND CITIZENSHIP STATUS IN THE UNITED STATES;NATIVITY AND CITIZENSHIP STATUS IN PUERTO RICO;AGGREGATE NONFAMILY HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY SEX OF HOUSEHOLDER BY LIVING ALONE BY AGE OF HOUSEHOLDER;PER CAPITA INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS);PER CAPITA INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (WHITE ALONE);PER CAPITA INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (BLACK OR AFRICAN AMERICAN ALONE);PER CAPITA INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (AMERICAN INDIAN AND ALASKA NATIVE ALONE);PER CAPITA INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (ASIAN ALONE);PER CAPITA INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);PER CAPITA INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (SOME OTHER RACE ALONE);PER CAPITA INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (TWO OR MORE RACES);PER CAPITA INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (WHITE ALONE, NOT HISPANIC OR LATINO);PER CAPITA INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) (HISPANIC OR LATINO);AGGREGATE INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS);AGGREGATE INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 15 YEARS AND OVER (WHITE ALONE);AGGREGATE INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 15 YEARS AND OVER (BLACK OR AFRICAN AMERICAN ALONE);AGGREGATE INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 15 YEARS AND OVER (AMERICAN INDIAN AND ALASKA NATIVE ALONE);AGGREGATE INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 15 YEARS AND OVER (ASIAN ALONE);AGGREGATE INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 15 YEARS AND OVER (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);AGGREGATE INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 15 YEARS AND OVER (SOME OTHER RACE ALONE);AGGREGATE INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 15 YEARS AND OVER (TWO OR MORE RACES);AGGREGATE INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 15 YEARS AND OVER (WHITE ALONE, NOT HISPANIC OR LATINO);AGGREGATE INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 15 YEARS AND OVER (HISPANIC OR LATINO);SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS BY INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 15 YEARS AND OVER;MEDIAN INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS FOR THE POPULATION 15 YEARS AND OVER WITH INCOME;SEX BY EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 16 YEARS AND OVER WITH EARNINGS IN THE PAST 12 MONTHS;MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY SEX FOR THE POPULATION 16 YEARS AND OVER WITH EARNINGS IN THE PAST 12 MONTHS;AGGREGATE EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY SEX BY WORK EXPERIENCE FOR THE POPULATION 16 YEARS AND OVER WITH EARNINGS;MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY SEX BY EDUCATIONAL ATTAINMENT FOR THE POPULATION 25 YEARS AND OVER;SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS BY EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 16 YEARS AND OVER;SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS BY EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 16 YEARS AND OVER (WHITE ALONE);SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS BY EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 16 YEARS AND OVER (BLACK OR AFRICAN AMERICAN ALONE);PLACE OF BIRTH BY NATIVITY AND CITIZENSHIP STATUS;SEX BY AGE BY NATIVITY AND CITIZENSHIP STATUS;SEX BY AGE BY NATIVITY AND CITIZENSHIP STATUS (WHITE ALONE);SEX BY AGE BY NATIVITY AND CITIZENSHIP STATUS (BLACK OR AFRICAN AMERICAN ALONE);SEX BY AGE BY NATIVITY AND CITIZENSHIP STATUS (AMERICAN INDIAN AND ALASKA NATIVE ALONE);SEX BY AGE BY NATIVITY AND CITIZENSHIP STATUS (ASIAN ALONE);SEX BY AGE BY NATIVITY AND CITIZENSHIP STATUS (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);SEX BY AGE BY NATIVITY AND CITIZENSHIP STATUS (SOME OTHER RACE ALONE);SEX BY AGE BY NATIVITY AND CITIZENSHIP STATUS (TWO OR MORE RACES);SEX BY AGE BY NATIVITY AND CITIZENSHIP STATUS (WHITE ALONE, NOT HISPANIC OR LATINO);SEX BY AGE BY NATIVITY AND CITIZENSHIP STATUS (HISPANIC OR LATINO);MEDIAN AGE BY NATIVITY AND CITIZENSHIP STATUS BY SEX;PERIOD OF ENTRY BY NATIVITY AND CITIZENSHIP STATUS IN THE UNITED STATES;PERIOD OF ENTRY BY NATIVITY AND CITIZENSHIP STATUS IN PUERTO RICO;PLACE OF BIRTH FOR THE FOREIGN-BORN POPULATION IN THE UNITED STATES;PLACE OF BIRTH FOR THE FOREIGN-BORN POPULATION IN PUERTO RICO;PLACE OF BIRTH BY YEAR OF ENTRY BY CITIZENSHIP STATUS FOR THE FOREIGN-BORN POPULATION;SEX BY PLACE OF BIRTH BY YEAR OF ENTRY FOR THE FOREIGN-BORN POPULATION;AGE AND NATIVITY OF OWN CHILDREN UNDER 18 YEARS IN FAMILIES AND SUBFAMILIES BY NUMBER AND NATIVITY OF PARENTS;RATIO OF INCOME TO POVERTY LEVEL IN THE PAST 12 MONTHS BY NATIVITY OF CHILDREN UNDER 18 YEARS IN FAMILIES AND SUBFAMILIES BY LIVING ARRANGEMENTS AND NATIVITY OF PARENTS;PERIOD OF NATURALIZATION;NATIVITY IN THE UNITED STATES;NATIVITY IN PUERTO RICO;SEX BY AGE FOR THE FOREIGN-BORN POPULATION;SEX BY AGE FOR THE FOREIGN-BORN POPULATION;PLACE OF BIRTH BY YEAR OF ENTRY FOR THE FOREIGN-BORN POPULATION;PLACE OF BIRTH BY AGE IN THE UNITED STATES;PLACE OF BIRTH BY AGE IN PUERTO RICO;MEDIAN AGE BY PLACE OF BIRTH IN THE UNITED STATES;MEDIAN AGE BY PLACE OF BIRTH IN PUERTO RICO;PLACE OF BIRTH BY SEX IN THE UNITED STATES;PLACE OF BIRTH BY SEX IN PUERTO RICO;PLACE OF BIRTH (WHITE ALONE) IN THE UNITED STATES;PLACE OF BIRTH (WHITE ALONE) IN PUERTO RICO;PLACE OF BIRTH (BLACK OR AFRICAN AMERICAN ALONE) IN THE UNITED STATES;PLACE OF BIRTH (BLACK OR AFRICAN AMERICAN ALONE) IN PUERTO RICO;PLACE OF BIRTH (AMERICAN INDIAN AND ALASKA NATIVE ALONE) IN THE UNITED STATES;PLACE OF BIRTH (AMERICAN INDIAN AND ALASKA NATIVE ALONE) IN PUERTO RICO;PLACE OF BIRTH (ASIAN ALONE) IN THE UNITED STATES;PLACE OF BIRTH (ASIAN ALONE) IN PUERTO RICO;PLACE OF BIRTH (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE) IN THE UNITED STATES;PLACE OF BIRTH (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE) IN PUERTO RICO;SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS BY EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 16 YEARS AND OVER (AMERICAN INDIAN AND ALASKA NATIVE ALONE);SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS BY EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 16 YEARS AND OVER (ASIAN ALONE);SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS BY EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 16 YEARS AND OVER (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS BY EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 16 YEARS AND OVER (SOME OTHER RACE ALONE);SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS BY EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 16 YEARS AND OVER (TWO OR MORE RACES);SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS BY EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 16 YEARS AND OVER (WHITE ALONE, NOT HISPANIC OR LATINO);SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS BY EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 16 YEARS AND OVER (HISPANIC OR LATINO);MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS FOR THE POPULATION 16 YEARS AND OVER WITH EARNINGS IN THE PAST 12 MONTHS;MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS FOR THE POPULATION 16 YEARS AND OVER WITH EARNINGS IN THE PAST 12 MONTHS (WHITE ALONE);MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS FOR THE POPULATION 16 YEARS AND OVER WITH EARNINGS IN THE PAST 12 MONTHS (BLACK OR AFRICAN AMERICAN ALONE);MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS FOR THE POPULATION 16 YEARS AND OVER WITH EARNINGS IN THE PAST 12 MONTHS (AMERICAN INDIAN AND ALASKA NATIVE ALONE);MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS FOR THE POPULATION 16 YEARS AND OVER WITH EARNINGS IN THE PAST 12 MONTHS (ASIAN ALONE);MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS FOR THE POPULATION 16 YEARS AND OVER WITH EARNINGS IN THE PAST 12 MONTHS (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS FOR THE POPULATION 16 YEARS AND OVER WITH EARNINGS IN THE PAST 12 MONTHS (SOME OTHER RACE ALONE);MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS FOR THE POPULATION 16 YEARS AND OVER WITH EARNINGS IN THE PAST 12 MONTHS (TWO OR MORE RACES);MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS FOR THE POPULATION 16 YEARS AND OVER WITH EARNINGS IN THE PAST 12 MONTHS (WHITE ALONE, NOT HISPANIC OR LATINO);MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY SEX BY WORK EXPERIENCE IN THE PAST 12 MONTHS FOR THE POPULATION 16 YEARS AND OVER WITH EARNINGS (HISPANIC OR LATINO);MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE POPULATION 16 YEARS AND OVER WHO WORKED FULL-TIME, YEAR-ROUND WITH EARNINGS IN THE PAST 12 MONTHS;SEX BY AGE BY VETERAN STATUS FOR THE CIVILIAN POPULATION 18 YEARS AND OVER;PERIOD OF MILITARY SERVICE FOR CIVILIAN VETERANS 18 YEARS AND OVER;VETERAN STATUS BY EDUCATIONAL ATTAINMENT FOR THE CIVILIAN POPULATION 25 YEARS AND OVER;MEDIAN INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY VETERAN STATUS BY SEX FOR THE CIVILIAN POPULATION 18 YEARS AND OVER WITH INCOME;AGE BY VETERAN STATUS BY EMPLOYMENT STATUS FOR THE CIVILIAN POPULATION 18 TO 64 YEARS;SERVICE-CONNECTED DISABILITY-RATING STATUS AND RATINGS FOR CIVILIAN VETERANS 18 YEARS AND OVER;RECEIPT OF FOOD STAMPS/SNAP IN THE PAST 12 MONTHS BY PRESENCE OF PEOPLE 60 YEARS AND OVER FOR HOUSEHOLDS;PLACE OF BIRTH (SOME OTHER RACE ALONE) IN THE UNITED STATES;PLACE OF BIRTH (SOME OTHER RACE ALONE) IN PUERTO RICO;PLACE OF BIRTH (TWO OR MORE RACES) IN THE UNITED STATES;PLACE OF BIRTH (TWO OR MORE RACES) IN PUERTO RICO;PLACE OF BIRTH (WHITE ALONE, NOT HISPANIC OR LATINO) IN THE UNITED STATES;PLACE OF BIRTH (WHITE ALONE, NOT HISPANIC OR LATINO) IN PUERTO RICO;PLACE OF BIRTH (HISPANIC OR LATINO) IN THE UNITED STATES;PLACE OF BIRTH (HISPANIC OR LATINO) IN PUERTO RICO;PLACE OF BIRTH BY LANGUAGE SPOKEN AT HOME AND ABILITY TO SPEAK ENGLISH IN THE UNITED STATES;PLACE OF BIRTH BY LANGUAGE SPOKEN AT HOME AND ABILITY TO SPEAK ENGLISH IN PUERTO RICO;PLACE OF BIRTH BY MARITAL STATUS IN THE UNITED STATES;PLACE OF BIRTH BY MARITAL STATUS IN PUERTO RICO;PLACE OF BIRTH BY EDUCATIONAL ATTAINMENT IN THE UNITED STATES;PLACE OF BIRTH BY EDUCATIONAL ATTAINMENT IN PUERTO RICO;PLACE OF BIRTH BY INDIVIDUAL INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) IN THE UNITED STATES;PLACE OF BIRTH BY INDIVIDUAL INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) IN PUERTO RICO;MEDIAN INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY PLACE OF BIRTH IN THE UNITED STATES;MEDIAN INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY PLACE OF BIRTH IN PUERTO RICO;PLACE OF BIRTH BY POVERTY STATUS IN THE PAST 12 MONTHS IN THE UNITED STATES;PLACE OF BIRTH BY POVERTY STATUS IN THE PAST 12 MONTHS IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY AGE FOR CURRENT RESIDENCE IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY AGE FOR CURRENT RESIDENCE IN PUERTO RICO;MEDIAN AGE BY GEOGRAPHICAL MOBILITY IN THE PAST YEAR FOR CURRENT RESIDENCE IN THE UNITED STATES;MEDIAN AGE BY GEOGRAPHICAL MOBILITY IN THE PAST YEAR FOR CURRENT RESIDENCE IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY SEX FOR CURRENT RESIDENCE IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY SEX FOR CURRENT RESIDENCE IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (WHITE ALONE) FOR CURRENT RESIDENCE IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (WHITE ALONE) FOR CURRENT RESIDENCE IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (BLACK OR AFRICAN AMERICAN ALONE) FOR CURRENT RESIDENCE IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (BLACK OR AFRICAN AMERICAN ALONE) FOR CURRENT RESIDENCE IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (AMERICAN INDIAN AND ALASKA NATIVE ALONE) FOR CURRENT RESIDENCE IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (AMERICAN INDIAN AND ALASKA NATIVE ALONE) FOR CURRENT RESIDENCE IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (ASIAN ALONE) FOR CURRENT RESIDENCE IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (ASIAN ALONE) FOR CURRENT RESIDENCE IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE) FOR CURRENT RESIDENCE IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE) FOR CURRENT RESIDENCE IN PUERTO RICO;RECEIPT OF FOOD STAMPS/SNAP IN THE PAST 12 MONTHS BY PRESENCE OF CHILDREN UNDER 18 YEARS BY HOUSEHOLD TYPE FOR HOUSEHOLDS;RECEIPT OF FOOD STAMPS/SNAP IN THE PAST 12 MONTHS BY POVERTY STATUS IN THE PAST 12 MONTHS FOR HOUSEHOLDS;RECEIPT OF FOOD STAMPS/SNAP IN THE PAST 12 MONTHS BY RACE OF HOUSEHOLDER (WHITE ALONE);RECEIPT OF FOOD STAMPS/SNAP IN THE PAST 12 MONTHS BY RACE OF HOUSEHOLDER (BLACK OR AFRICAN AMERICAN ALONE);RECEIPT OF FOOD STAMPS/SNAP IN THE PAST 12 MONTHS BY RACE OF HOUSEHOLDER (AMERICAN INDIAN AND ALASKA NATIVE ALONE);RECEIPT OF FOOD STAMPS/SNAP IN THE PAST 12 MONTHS BY RACE OF HOUSEHOLDER (ASIAN ALONE);RECEIPT OF FOOD STAMPS/SNAP IN THE PAST 12 MONTHS BY RACE OF HOUSEHOLDER (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE);RECEIPT OF FOOD STAMPS/SNAP IN THE PAST 12 MONTHS BY RACE OF HOUSEHOLDER (SOME OTHER RACE ALONE);RECEIPT OF FOOD STAMPS/SNAP IN THE PAST 12 MONTHS BY RACE OF HOUSEHOLDER (TWO OR MORE RACES);RECEIPT OF FOOD STAMPS/SNAP IN THE PAST 12 MONTHS BY RACE OF HOUSEHOLDER (WHITE ALONE, NOT HISPANIC OR LATINO);RECEIPT OF FOOD STAMPS/SNAP IN THE PAST 12 MONTHS BY RACE OF HOUSEHOLDER (HISPANIC OR LATINO);RECEIPT OF FOOD STAMPS/SNAP IN THE PAST 12 MONTHS BY FAMILY TYPE BY NUMBER OF WORKERS IN FAMILY IN THE PAST 12 MONTHS;MEDIAN HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY RECEIPT OF FOOD STAMPS/SNAP IN THE PAST 12 MONTHS;RECEIPT OF FOOD STAMPS/SNAP IN THE PAST 12 MONTHS BY DISABILITY STATUS FOR HOUSEHOLDS;SEX BY AGE BY EMPLOYMENT STATUS FOR THE POPULATION 16 YEARS AND OVER;PRESENCE OF OWN CHILDREN UNDER 18 YEARS BY AGE OF OWN CHILDREN UNDER 18 YEARS BY EMPLOYMENT STATUS FOR FEMALES 20 TO 64 YEARS;EDUCATIONAL ATTAINMENT BY EMPLOYMENT STATUS FOR THE POPULATION 25 TO 64 YEARS;PRESENCE OF OWN CHILDREN UNDER 18 YEARS BY FAMILY TYPE BY EMPLOYMENT STATUS;AGE OF OWN CHILDREN UNDER 18 YEARS IN FAMILIES AND SUBFAMILIES BY LIVING ARRANGEMENTS BY EMPLOYMENT STATUS OF PARENTS;PRESENCE OF OWN CHILDREN UNDER 18 YEARS BY FAMILY TYPE BY NUMBER OF WORKERS IN FAMILY IN THE PAST 12 MONTHS;PRESENCE OF OWN CHILDREN UNDER 18 YEARS IN MARRIED-COUPLE FAMILIES BY WORK EXPERIENCE OF HOUSEHOLDER AND SPOUSE;MEDIAN AGE BY SEX FOR WORKERS 16 TO 64 YEARS;AGGREGATE USUAL HOURS WORKED IN THE PAST 12 MONTHS BY SEX FOR WORKERS 16 TO 64 YEARS;MEAN USUAL HOURS WORKED IN THE PAST 12 MONTHS FOR WORKERS 16 TO 64 YEARS;SEX BY WORK STATUS IN THE PAST 12 MONTHS BY USUAL HOURS WORKED PER WEEK IN THE PAST 12 MONTHS BY WEEKS WORKED IN THE PAST 12 MONTHS FOR THE POPULATION 16 TO 64 YEARS;POVERTY STATUS IN THE PAST 12 MONTHS BY DISABILITY STATUS BY EMPLOYMENT STATUS FOR THE POPULATION 20 TO 64 YEARS;EMPLOYMENT STATUS FOR THE POPULATION 16 YEARS AND OVER;SEX BY WORK STATUS IN THE PAST 12 MONTHS BY USUAL HOURS WORKED PER WEEK IN THE PAST 12 MONTHS BY WEEKS WORKED IN THE PAST 12 MONTHS FOR THE POPULATION 65 YEARS AND OVER;FULL-TIME, YEAR-ROUND WORK STATUS IN THE PAST 12 MONTHS BY AGE FOR THE POPULATION 16 YEARS AND OVER;OCCUPATION BY MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;SEX BY OCCUPATION AND MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;OCCUPATION BY MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE FULL-TIME, YEAR-ROUND CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (SOME OTHER RACE ALONE) FOR CURRENT RESIDENCE IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (SOME OTHER RACE ALONE) FOR CURRENT RESIDENCE IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (TWO OR MORE RACES) FOR CURRENT RESIDENCE IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (TWO OR MORE RACES) FOR CURRENT RESIDENCE IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (WHITE ALONE, NOT HISPANIC OR LATINO) FOR CURRENT RESIDENCE IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (WHITE ALONE, NOT HISPANIC OR LATINO) FOR CURRENT RESIDENCE IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (HISPANIC OR LATINO) FOR CURRENT RESIDENCE IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (HISPANIC OR LATINO) FOR CURRENT RESIDENCE IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY CITIZENSHIP STATUS FOR CURRENT RESIDENCE IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY CITIZENSHIP STATUS FOR CURRENT RESIDENCE IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY MARITAL STATUS FOR CURRENT RESIDENCE IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY MARITAL STATUS FOR CURRENT RESIDENCE IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY EDUCATIONAL ATTAINMENT FOR CURRENT RESIDENCE IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY EDUCATIONAL ATTAINMENT FOR CURRENT RESIDENCE IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY INDIVIDUAL INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR CURRENT RESIDENCE IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY INDIVIDUAL INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR CURRENT RESIDENCE IN PUERTO RICO;MEDIAN INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY GEOGRAPHICAL MOBILITY IN THE PAST YEAR FOR CURRENT RESIDENCE IN THE UNITED STATES;MEDIAN INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) BY GEOGRAPHICAL MOBILITY IN THE PAST YEAR FOR CURRENT RESIDENCE IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY POVERTY STATUS IN THE PAST 12 MONTHS FOR CURRENT RESIDENCE IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY POVERTY STATUS IN THE PAST 12 MONTHS FOR CURRENT RESIDENCE IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY TENURE FOR CURRENT RESIDENCE IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY TENURE FOR CURRENT RESIDENCE IN PUERTO RICO;MOVERS BETWEEN REGIONS IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR FOR CURRENT RESIDENCE--METROPOLITAN STATISTICAL AREA LEVEL IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR FOR CURRENT RESIDENCE--METROPOLITAN STATISTICAL AREA LEVEL IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR FOR CURRENT RESIDENCE--MICROPOLITAN STATISTICAL AREA LEVEL IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR FOR CURRENT RESIDENCE--MICROPOLITAN STATISTICAL AREA LEVEL IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR FOR CURRENT RESIDENCE--NOT METROPOLITAN OR MICROPOLITAN STATISTICAL AREA LEVEL IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR FOR CURRENT RESIDENCE--NOT METROPOLITAN OR MICROPOLITAN STATISTICAL AREA LEVEL IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR FOR CURRENT RESIDENCE--STATE, COUNTY AND PLACE LEVEL IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR FOR CURRENT RESIDENCE--STATE, COUNTY AND PLACE LEVEL IN PUERTO RICO;SEX BY OCCUPATION AND MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE FULL-TIME, YEAR-ROUND CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;INDUSTRY BY MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;SEX BY INDUSTRY AND MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;INDUSTRY BY MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE FULL-TIME, YEAR-ROUND CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;SEX BY INDUSTRY AND MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE FULL-TIME, YEAR-ROUND CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;SEX BY CLASS OF WORKER FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;CLASS OF WORKER BY MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;SEX BY CLASS OF WORKER AND MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;SEX BY CLASS OF WORKER FOR THE FULL-TIME, YEAR-ROUND CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;CLASS OF WORKER BY MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE FULL-TIME, YEAR-ROUND CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;SEX BY CLASS OF WORKER AND MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE FULL-TIME, YEAR-ROUND CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;DETAILED OCCUPATION FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;DETAILED OCCUPATION FOR THE CIVILIAN EMPLOYED MALE POPULATION 16 YEARS AND OVER;DETAILED OCCUPATION FOR THE CIVILIAN EMPLOYED FEMALE POPULATION 16 YEARS AND OVER;DETAILED OCCUPATION BY MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE FULL-TIME, YEAR-ROUND CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;DETAILED OCCUPATION BY MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE FULL-TIME, YEAR-ROUND CIVILIAN EMPLOYED MALE POPULATION 16 YEARS AND OVER;DETAILED OCCUPATION BY MEDIAN EARNINGS IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR THE FULL-TIME, YEAR-ROUND CIVILIAN EMPLOYED FEMALE POPULATION 16 YEARS AND OVER;DETAILED OCCUPATION FOR THE FULL-TIME, YEAR-ROUND CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;DETAILED OCCUPATION FOR THE FULL-TIME, YEAR-ROUND CIVILIAN EMPLOYED MALE POPULATION 16 YEARS AND OVER;DETAILED OCCUPATION FOR THE FULL-TIME, YEAR-ROUND CIVILIAN EMPLOYED FEMALE POPULATION 16 YEARS AND OVER;DETAILED INDUSTRY FOR THE CIVILIAN EMPLOYED POPULATION 16 YEARS AND OVER;DETAILED INDUSTRY FOR THE CIVILIAN EMPLOYED MALE POPULATION 16 YEARS AND OVER;DETAILED INDUSTRY FOR THE CIVILIAN EMPLOYED FEMALE POPULATION 16 YEARS AND OVER;HOUSING UNITS;OCCUPANCY STATUS;TENURE;TENURE (WHITE ALONE HOUSEHOLDER);TENURE (BLACK OR AFRICAN AMERICAN ALONE HOUSEHOLDER);TENURE (AMERICAN INDIAN AND ALASKA NATIVE ALONE HOUSEHOLDER);TENURE (ASIAN ALONE HOUSEHOLDER);TENURE (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE HOUSEHOLDER);TENURE (SOME OTHER RACE ALONE HOUSEHOLDER);TENURE (TWO OR MORE RACES HOUSEHOLDER);GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY AGE FOR RESIDENCE 1 YEAR AGO IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY AGE FOR RESIDENCE 1 YEAR AGO IN PUERTO RICO;MEDIAN AGE BY GEOGRAPHICAL MOBILITY IN THE PAST YEAR FOR RESIDENCE 1 YEAR AGO IN THE UNITED STATES;MEDIAN AGE BY GEOGRAPHICAL MOBILITY IN THE PAST YEAR FOR RESIDENCE 1 YEAR AGO IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY SEX FOR RESIDENCE 1 YEAR AGO IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY SEX FOR RESIDENCE 1 YEAR AGO IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (WHITE ALONE) FOR RESIDENCE 1 YEAR AGO IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (WHITE ALONE) FOR RESIDENCE 1 YEAR AGO IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (BLACK OR AFRICAN AMERICAN ALONE) FOR RESIDENCE 1 YEAR AGO IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (BLACK OR AFRICAN AMERICAN ALONE) FOR RESIDENCE 1 YEAR AGO IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (AMERICAN INDIAN AND ALASKA NATIVE ALONE) FOR RESIDENCE 1 YEAR AGO IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (AMERICAN INDIAN AND ALASKA NATIVE ALONE) FOR RESIDENCE 1 YEAR AGO IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (ASIAN ALONE) FOR RESIDENCE 1 YEAR AGO IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (ASIAN ALONE) FOR RESIDENCE 1 YEAR AGO IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE) FOR RESIDENCE 1 YEAR AGO IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER ALONE) FOR RESIDENCE 1 YEAR AGO IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (SOME OTHER RACE ALONE) FOR RESIDENCE 1 YEAR AGO IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (SOME OTHER RACE ALONE) FOR RESIDENCE 1 YEAR AGO IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (TWO OR MORE RACES) FOR RESIDENCE 1 YEAR AGO IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (TWO OR MORE RACES) FOR RESIDENCE 1 YEAR AGO IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (WHITE ALONE, NOT HISPANIC OR LATINO) FOR RESIDENCE 1 YEAR AGO IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (WHITE ALONE, NOT HISPANIC OR LATINO) FOR RESIDENCE 1 YEAR AGO IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (HISPANIC OR LATINO) FOR RESIDENCE 1 YEAR AGO IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR (HISPANIC OR LATINO) FOR RESIDENCE 1 YEAR AGO IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY CITIZENSHIP STATUS FOR RESIDENCE 1 YEAR AGO IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY CITIZENSHIP STATUS FOR RESIDENCE 1 YEAR AGO IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY MARITAL STATUS FOR RESIDENCE 1 YEAR AGO IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY MARITAL STATUS FOR RESIDENCE 1 YEAR AGO IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY EDUCATIONAL ATTAINMENT FOR RESIDENCE 1 YEAR AGO IN THE UNITED STATES;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY EDUCATIONAL ATTAINMENT FOR RESIDENCE 1 YEAR AGO IN PUERTO RICO;GEOGRAPHICAL MOBILITY IN THE PAST YEAR BY INDIVIDUAL INCOME IN THE PAST 12 MONTHS (IN 2021 INFLATION-ADJUSTED DOLLARS) FOR RESIDENCE 1 YEAR AGO IN THE UNITED STATES string B17015,B18104,B17016,B18105,B17017,B18106,B17018,B18107,B17011,B19301A,B07001PR,B17012,B18101,B17013,B18102,B17014,B18103,B19301E,B19301D,B19301C,B17010,B19301B,B98013,B99102,B19301I,B98012,B19301H,B99104,B19301G,B98014,B99103,B19301F,B08536,B08537,B08534,B98011,B07203,B07204,B07408PR,B08532,B07201,B07202,B07404APR,B17019,B17004,B17005,B17006,B17007,B18101I,B07012PR,B17001,B17003,B08303,B98022,B98021,B08301,B08302,B08541,B17008,B17009,B05008,B08519,B05007,B06004HPR,B05009,B25097,B05004,B25096,B05003,B25099,B05006,B08513,B25098,B05005,B08511,B05002,B05001,B25091,B25090,B25093,B25092,B25095,B25094,B07004DPR,B26103G,B26103F,B26103I,B26103H,B26103C,B26103B,B26103E,B26103D,B98002,B98001,B26103A,B08528,B98003,B25086,B27023,B05015,B08526,B25085,B05014,B25088,B08524,B25087,B27022,B25014I,B08521,B01001F,B05011,B25014H,B08522,B25089,B01001G,B05010,B25014G,B01001H,B05013,B25014F,B01001I,B05012,B25014E,B01001B,B25014D,B01001C,B25014C,B25080,B01001D,B25014B,B01001E,B25014A,B25082,B25081,B27020,B25083,B01001A,B12007C,B12007B,B12007A,B07003PR,B18140,B07009,B07008,B07007,B01002G,B07002,B01002H,B07001,B01002I,B07003,B01002C,B01002D,B12007I,B01002E,B07404CPR,B12007H,B01002F,B12007G,B12007F,B12007E,B01002A,B12007D,B01002B,B18135,B25032I,B25032H,B25032G,B25032F,B08103,B25032E,B06003PR,B07013,B25032D,B07012,B08101,B25032C,B25032B,B25032A,B07011,B07010,B99052PR,B19216,B19215,B19214,B06004FPR,B11001B,B11001A,B11001D,B11001C,B11001F,B11001E,B11001H,B11001G,B11001I,B17026,C15010H,C15010I,B17022,B19201,B07004FPR,B17023,B17024,B17025,B19202,B17020,B17021,B11002A,B29004,B29003,B11002C,B29002,B11002B,B29001,B11002E,B11002D,B11002G,B11002F,B11002I,B11002H,B25039,B25038,B25031,B26120,B03001,B03002,B25033,B03003,B25032,B25035,B25034,B25037,B25036,B07201PR,B26117,B25027,B26119,B26118,C18108,B25020,B25022,B06001PR,B25021,B26110,B25024,B26113,B25026,B26115,B26114,C18131,C18130,B25017,B26106,C27001B,B25016,B26105,C27001A,B25019,B26108,C27001D,B25018,B26107,C27001C,C27001F,B26109,C27001E,C27001H,C27001G,B25011,B06012PR,B25010,B25013,B26102,B25012,B26101,B25015,B26104,B25014,B26103,C18120,B07004HPR,C18121,B25006,B25005,B25008,B25007,B25009,B25002,B12002I,B25001,B25004,B12002H,B12002G,B25003,B12002F,B12002E,B12002D,B12002C,B12002B,B12002A,B07402PR,B07409,B27019,B07407,B07408,B25075,B07403,B25074,B25077,B27010,B07401,B25076,B27011,B07402,B25079,B25078,B27015,B25071,B25070,B07007PR,B25072,B14007A,B07203PR,B08105A,B08105B,B08105C,B07413PR,B08105D,B08105E,B08105F,B08105G,B08105H,B08105I,B08503,B25064,B27001,B25063,B27002,B07412,B08501,B25066,B07413,B25065,B25068,B07410,B07411,B25067,B27003,B25069,B14007F,B14007G,B14007H,B14007I,B25060,B14007B,B14007C,B25062,B14007D,B25061,B14007E,B15012,B15011,B20005A,B20005B,B20005C,B20005D,B25053,B06010PR,B25052,B25055,B25054,B25057,B25056,B25059,B25058,B20005E,B20005F,B20005G,B20005H,B20005I,B25051,B25050,B15001,B13002G,B13002F,B13002I,B15003,B13002H,B15002,B13002C,B25049,B13002B,B13002E,B13002D,B13002A,B25042,B25041,B25044,B25043,B25046,B05005PR,B25045,B25048,B25047,B25040,C24070,B23018,B23010,B23013,B07009PR,C24060,B23003,B07411PR,B22005A,B22005B,B23006,B23007,B23008,B23009,B22005G,B22005H,B22005I,B22005C,B22005D,B22005E,B23001,B22005F,B11010,B11012,B11011,B992516,B992514,B992515,B992518,B992519,B11014,B11013,B11016,B11015,B992512,B11017,B992513,B992510,B992511,B11001,B11003,B11002,B992520,B11005,B11004,B11007,B992523,B11006,B11009,B992521,B11008,B992522,B13010,B13014,B13012,B13015,B13016,B13002,B24136,C16001,C16002,C27001I,B24134,B24135,B13004,B13008,B05012PR,B24125,B24126,B01003,B99087,B99086,B99089,B99088,B99083,B01002,B24121,B99082,B01001,B24122,B99085,B24123,B99084,B24124,B99081,B99080,B05001PR,B23025,B24114,B23026,B24115,B23027,B24116,B23020,B23022,B23024,B99092,B08017,B19013H,B08018,B19013I,B08015,B99061,B08016,B08013,B08014,B08011,B08012,C15010A,C15010B,C15010C,C15010D,C15010E,C15010F,C15010G,B08505A,B08505C,B08505B,B08505E,B08505D,B19037A,B08505G,B08505F,B08505I,B19013B,B19037D,B08505H,B19013C,B19037E,B992709,B19037B,B06009PR,B19013A,B19037C,B19013F,B19037H,B19013G,B19037I,B19013D,B19037F,B19013E,B19037G,B992703,B992704,B992701,B992702,B99072,B992707,B99071,B992708,B992705,B992706,C24010,B19101B,B19131,B19101C,B19130,B06004DPR,B19101A,B19101F,B19101G,B19101D,B19101E,B99281,B07404FPR,B99283,B99282,B12501,B12503,B12502,B12505,B12504,B19128,B19127,B19129,B19123,B19126,B19125,B19122,B19121,B08008,B08009,B99053,B08006,B08007,B99052,B99051,B26203I,C24030,B26203G,B26203H,B26203E,B26203F,B26203C,B26203D,B26203A,B26203B,B99021,C02003,C24020,B17010E,B06007PR,B17010F,B17010C,B17010D,B17010A,B17010B,B99031,B19101H,B19101I,C24050,B06004BPR,B99245,B99244,B99246,B99241,B07409PR,B99243,B99242,B17010I,B17010G,B17010H,B07404HPR,B18101E,B18101F,B18101G,B18101H,B18101A,B18101B,B18101C,B18101D,B07004BPR,B21005,B21004,B21003,B21002,B21001,B07011PR,B99259,C24040,B99256,B99255,B99258,B99257,B99252,B99012,B99254,B99011,B99253,B19313B,B19313A,B19313,B17001G,B19313F,B17001H,B19313E,B17001E,B19313D,B17001F,B19313C,B17001C,B06004IPR,B17001D,B19313I,B17001A,B19313H,B17001B,B19313G,B99221,B08412,C21007,B07004CPR,B19301,B99234,B06009,B99233,B06008,B28011,B99232,B06007,B28012,B99231,B06001,B17001I,B06003,B06002,B28010,B07002PR,B28008,B99201,B28002,B28003,B07407PR,B28001,B25003H,B28006,B25003I,B28007,B28004,B25003F,B28005,B25003G,B25003D,B25003E,B07404BPR,B25003B,B25003C,B25003A,C23002G,C23002F,C23002I,B16010,C23002H,B07013PR,B17101,C23002A,B99212,C23002C,B99211,C23002B,B08406,C23002E,C23002D,B19119,B19113,B06004GPR,C15002A,C15002B,C15002C,C15002D,C15002E,C15002F,C15002G,C15002H,C15002I,C21001G,B19101,C21001H,B07004EPR,C21001I,C21001C,C21001D,C21001E,C21001F,C21001A,C21001B,B26109PR,B06012,B07101,B06011,B06010,B07404DPR,B19326,B28009I,B19325,B28009B,B28009A,B28009D,B28009C,B28009F,B28009E,B28009H,B28009G,B08202,B08203,B06002PR,B08201,B16005F,B16005G,B26001,B16005H,B16005I,B16005A,B16005B,B16005C,B16005D,B16005E,B07004GPR,B05006PR,B14003,B14004,B14001,B14002,B02018,B02017,B02016,B02015,B02019,B02010,B24041,B25132,B24042,B26220,B25134,B02014,B25133,B02013,B02012,B07403PR,B25135,B02011,B14007,B14005,B14006,B07202PR,B25127,B26216,B25126,B26215,B25129,B26218,B25128,B26217,B26219,B25121,B26210,B24031,B25120,B24032,B25123,B26212,B25122,B26211,B25125,B26214,B25124,B26213,B16001,B16006,B16005,B16004,B16003,B06011PR,B16009,B07004IPR,B16008,B16007,B07004B,B07004A,B07004D,B07004C,B07004F,B07004E,B24090,B07004H,B24091,B07004G,B24092,B07004I,B20017A,B20017B,B20017C,B20017D,B20017E,B07401PR,B20017F,B20017G,B20017H,B20017I,B24080,B24081,B24082,B07008PR,B10051B,B10051A,B07204PR,B10051F,B07412PR,B10051E,B10051D,B10051C,B04006,B10051I,B04007,B08604,B10051H,B10051G,B08602,B08603,B04004,B08601,B04005,B10063,B06004APR,B06004C,B06004B,B12002,B06004A,B12001,B06004G,B06004F,B06004E,B06004D,B06004I,B06004H,B07404IPR,B12006,B12007,B10050,B10051,B10052,B10053,B10054,B10056,B10057,B10058,B10059,C27007,C27006,C27005,C27004,C27009,C27008,C15010,B07410PR,B19082,B19083,B22010,B25116,B26205,C27021,B25115,B26204,B25118,B26207,B25117,B26206,B26209,B25119,B26208,B25110,B24021,B25112,B26201,B24022,B25111,B25114,B26203,B25113,B26202,C27018,C27017,C27016,C27014,C27013,C27012,B25105,B25104,B25107,B25106,B25109,B25108,B02009,B02008,B25101,B24011,B25100,B24012,B25103,B02001,B25102,C17002,B05003A,B05003C,B05003B,B05003I,B05003H,B05003E,B05003D,B05003G,B05003F,B19037,B06004EPR,B99186,B19001I,B99185,B19001G,B19025I,B99187,B19001H,B08136,B99182,B07404EPR,B08137,B99181,B08134,B99184,B08135,B99183,B08132,B08133,B08130,B08131,B20017,B20018,B19025,B21100,B19001A,B19025C,B19001B,B19025D,B19025A,B19025B,B19001E,B19025G,B19001F,B19025H,B19001C,B19025E,B19001D,B19025F,B07404B,B07404A,B99193,B07404F,B99192,B07404E,B07404D,B99194,B07404C,B07404I,B08141,B99191,B07404H,B07404G,B19019,B20004,B20005,B19013,B20002,B20003,B20001,B19113C,B19113D,B19113A,B19113B,B19113G,B19113H,B19113E,B19113F,B08119,B99163,B99162,B08113,B99161,B08111,B17020D,B17020E,B17020B,B17020C,B19001,B06008PR,B17020A,B08128,B99171,B08126,B08124,B99172,B08121,B08122,B22008,B22007,B22003,B22002,B06004CPR,B99142,C24010A,B99141,B19080,B19081,B17020H,B17020I,B17020F,B07404GPR,B17020G,C24010I,B22001,C24010H,B09021,C24010G,C24010F,C24010E,B09020,C24010D,C24010C,C24010B,B07004APR,B19069,B10010,B07010PR,B19064,B19065,B19066,B19067,B19060,B19061,B19062,B19063,B99152,B19113I,B19070,B99151,B19057,B19202A,B19058,B19059,B19053,B19202E,B19054,B19202D,B19055,B19202C,B19056,B19202B,B99124,B19202I,B99123,B19050,B19202H,B99126,B19051,B19202G,B99125,B19052,B19202F,B98031,B99122,B98032,B99121,B09005,B09001,B10001,B09002,B10002,B19049,B99131,B09018,B09019,B99132,B09010 0 NaN NaN NAME NaN

It looks like the table we want is “B03002” — we can also easily filter for all variables in this table

variables = [
    "NAME",
    "B03002_001E", # Total
    "B03002_003E", # Not Hispanic, White
    "B03002_004E", # Not Hispanic, Black
    "B03002_005E", # Not Hispanic, American Indian
    "B03002_006E", # Not Hispanic, Asian
    "B03002_007E", # Not Hispanic, Native Hawaiian
    "B03002_008E", # Not Hispanic, Other
    "B03002_009E", # Not Hispanic, Two or More Races
    "B03002_012E", # Hispanic
]
Note

We’ve also include the “NAME” variable which returns the name of the Census geography we are querying for.

Step 4: Identify the geographies to use

The Census API use heirarchy of geographies when requesting data.

For example, you cannot just request data for a specific county — you need to specify the state and the county.

Common hierarchies

  • State –> county
  • State –> place (e.g., cities)
  • State –> county –> tract
  • State –> county –> tract –> block group

Tip: Use the .geographies attribute

This allows you to see:

  1. What geographies are available for a specific dataset
  2. The other required geographies in the heirarchy
acs.geographies['fips']
name geoLevelDisplay referenceDate requires wildcard optionalWithWCFor
0 us 010 2021-01-01 NaN NaN NaN
1 region 020 2021-01-01 NaN NaN NaN
2 division 030 2021-01-01 NaN NaN NaN
3 state 040 2021-01-01 NaN NaN NaN
4 county 050 2021-01-01 [state] [state] state
... ... ... ... ... ... ...
82 public use microdata area 795 2021-01-01 [state] [state] state
83 zip code tabulation area 860 2021-01-01 NaN NaN NaN
84 school district (elementary) 950 2021-01-01 [state] [state] state
85 school district (secondary) 960 2021-01-01 [state] [state] state
86 school district (unified) 970 2021-01-01 [state] [state] state

87 rows × 6 columns

For the racial dot map, we’ll use the most granular available geography: block group.

The hierarchy is: state –> county –> tract –> block group but we can use the * operator for tracts so we’ll need to know the FIPS codes for PA and Philadelphia County

counties = cenpy.explorer.fips_table("COUNTY")
counties.head()
0 1 2 3 4
0 AL 1 1 Autauga County H1
1 AL 1 3 Baldwin County H1
2 AL 1 5 Barbour County H1
3 AL 1 7 Bibb County H1
4 AL 1 9 Blount County H1
# Trim to just Philadelphia
# Search for rows where name contains "Philadelphia"
counties.loc[ counties[3].str.contains("Philadelphia") ]
0 1 2 3 4
2294 PA 42 101 Philadelphia County H6

For Philadelphia County, the FIPS codes are:

  • Philadelphia County: “101”
  • PA: “42”
philly_county_code = "101"
pa_state_code = "42"

You can also look up FIPS codes on Google! Wikipedia is usually a trustworthy source…

Step 5: Build the query (finally)

We’ll use the .query() function, which takes the following arguments:

  1. cols - the list of variables desired from the dataset
  2. geo_unit - string denoting the smallest geographic unit; syntax is “name:FIPS”
  3. geo_filter - dictionary containing groupings of geo_units, if required by the hierarchy
philly_demo_data = acs.query(
    cols=variables,
    geo_unit="block group:*",
    geo_filter={"state": pa_state_code, "county": philly_county_code, "tract": "*"},
)


philly_demo_data.head()
NAME B03002_001E B03002_003E B03002_004E B03002_005E B03002_006E B03002_007E B03002_008E B03002_009E B03002_012E state county tract block group
0 Block Group 1, Census Tract 1.01, Philadelphia County, Pennsylvania 0 0 0 0 0 0 0 0 0 42 101 000101 1
1 Block Group 2, Census Tract 1.01, Philadelphia County, Pennsylvania 0 0 0 0 0 0 0 0 0 42 101 000101 2
2 Block Group 3, Census Tract 1.01, Philadelphia County, Pennsylvania 0 0 0 0 0 0 0 0 0 42 101 000101 3
3 Block Group 4, Census Tract 1.01, Philadelphia County, Pennsylvania 1129 770 11 0 88 0 0 37 223 42 101 000101 4
4 Block Group 5, Census Tract 1.01, Philadelphia County, Pennsylvania 875 683 0 0 69 0 0 0 123 42 101 000101 5
len(philly_demo_data)
1338

Important: data is returned as strings rather than numeric values

for variable in variables:
    # Convert all variables EXCEPT for NAME
    if variable != "NAME":
        philly_demo_data[variable] = philly_demo_data[variable].astype(float)

What if we mess up the geographic hierarchy?

If you forget to include required parts of the geography heirarchy, you’ll get an error!

acs.query(
    cols=variables,
    geo_unit="block group:*",
    geo_filter={"state": pa_state_code},
)
/Users/nhand/mambaforge/envs/musa-550-fall-2023/lib/python3.10/site-packages/cenpy/remote.py:224: SyntaxWarning: "is not" with a literal. Did you mean "!="?
  if index is not "":
/Users/nhand/mambaforge/envs/musa-550-fall-2023/lib/python3.10/site-packages/cenpy/remote.py:224: SyntaxWarning: "is not" with a literal. Did you mean "!="?
  if index is not "":
HTTPError: 400 error: unknown/unsupported geography heirarchy

Step 6: We need the block group geometries too!

Use the pygris package to download geometries. It’s a port of the R package tigris to Python!

import pygris

There’s a function to return each of the main Census geographies. We’ll use the block_groups() function.

pygris.block_groups?
Signature:
pygris.block_groups(
    state=None,
    county=None,
    cb=False,
    year=None,
    cache=False,
    subset_by=None,
)
Docstring:
 Load a Census block groups shapefile into Python as a GeoDataFrame
Parameters
----------
state : str 
    The state name, state abbreviation, or two-digit FIPS code of the desired state. 
    If None, block groups for the entire United States will be downloaded if 
    available for that year / dataset combination.  
county : str
    The county name or three-digit FIPS code of the desired county. If None, block groups
    for the selected state will be downloaded. 
cb : bool 
    If set to True, download a generalized (1:500k) cartographic boundary file.  
    Defaults to False (the regular TIGER/Line file).
year : int 
    The year of the TIGER/Line or cartographic boundary shapefile. 
cache : bool 
    If True, the function will download a Census shapefile to a cache directory 
    on the user's computer for future access.  If False, the function will load
    the shapefile directly from the Census website.      
subset_by : tuple, int, slice, dict, geopandas.GeoDataFrame, or geopandas.GeoSeries
    An optional directive telling pygris to return a subset of data using 
    underlying arguments in geopandas.read_file().  
    subset_by operates as follows:
        * If a user supplies a tuple of format (minx, miny, maxx, maxy), 
        it will be interpreted as a bounding box and rows will be returned
        that intersect that bounding box;
        * If a user supplies a integer or a slice object, the first n rows
        (or the rows defined by the slice object) will be returned;
        * If a user supplies an object of type geopandas.GeoDataFrame
        or of type geopandas.GeoSeries, rows that intersect the input 
        object will be returned. CRS misalignment will be resolved 
        internally.  
        * A dict of format {"address": "buffer_distance"} will return rows
        that intersect a buffer of a given distance (in meters) around an 
        input address.  
Returns
----------
geopandas.GeoDataFrame: A GeoDataFrame of Census block groups.
Notes
----------
See https://www2.census.gov/geo/pdfs/reference/GARM/Ch10GARM.pdf for more information.    
File:      ~/mambaforge/envs/musa-550-fall-2023/lib/python3.10/site-packages/pygris/enumeration_units.py
Type:      function
philly_block_groups = pygris.block_groups(
    state=pa_state_code, county=philly_county_code, year=2021
)
philly_block_groups.head()
STATEFP COUNTYFP TRACTCE BLKGRPCE GEOID NAMELSAD MTFCC FUNCSTAT ALAND AWATER INTPTLAT INTPTLON geometry
124 42 101 989100 2 421019891002 Block Group 2 G5030 S 373653 7060 +40.0373207 -075.0177378 POLYGON ((-75.02195 40.03435, -75.02191 40.03451, -75.02173 40.03482, -75.02151 40.03515, -75.02135 40.03544, -75.02129 40.03562, -75.02130 40.03582, -75.02134 40.03607, -75.02150 40.03638, -75.02163 40.03663, -75.02181 40.03702, -75.02168 40.03709, -75.01967 40.03813, -75.01902 40.03847, -75.01843 40.03877, -75.01783 40.03908, -75.01703 40.03950, -75.01621 40.03991, -75.01535 40.03894, -75.01500 40.03910, -75.01432 40.03945, -75.01254 40.03803, -75.01216 40.03772, -75.01195 40.03755, -75.01131 40.03704, -75.01225 40.03654, -75.01530 40.03485, -75.01790 40.03340, -75.01797 40.03336, -75.01817 40.03350, -75.01862 40.03366, -75.01959 40.03374, -75.01986 40.03376, -75.02000 40.03377, -75.02011 40.03377, -75.02022 40.03378, -75.02043 40.03379, -75.02083 40.03378, -75.02125 40.03374, -75.02142 40.03375, -75.02157 40.03381, -75.02173 40.03392, -75.02180 40.03401, -75.02189 40.03411, -75.02195 40.03422, -75.02195 40.03435))
125 42 101 989100 4 421019891004 Block Group 4 G5030 S 1399991 948653 +40.0407424 -074.9975532 POLYGON ((-75.01254 40.03803, -75.01195 40.03824, -75.01165 40.03836, -75.01134 40.03848, -75.01104 40.03860, -75.01074 40.03873, -75.01045 40.03887, -75.01016 40.03901, -75.01010 40.03904, -75.00987 40.03915, -75.00959 40.03930, -75.00943 40.03937, -75.00901 40.03959, -75.00873 40.03973, -75.00844 40.03988, -75.00817 40.04003, -75.00789 40.04019, -75.00735 40.04051, -75.00681 40.04084, -75.00654 40.04100, -75.00628 40.04116, -75.00519 40.04181, -75.00351 40.04282, -75.00297 40.04315, -75.00062 40.04458, -75.00035 40.04474, -75.00008 40.04490, -74.99981 40.04507, -74.99954 40.04523, -74.99873 40.04572, -74.99712 40.04669, -74.99631 40.04718, -74.99627 40.04720, -74.99540 40.04644, -74.99472 40.04584, -74.99410 40.04530, -74.99382 40.04504, -74.99349 40.04476, -74.99320 40.04449, -74.99288 40.04421, -74.99227 40.04368, -74.99166 40.04313, -74.99098 40.04253, -74.99094 40.04252, -74.99061 40.04237, -74.99030 40.04238, -74.98657 40.03896, -74.98764 40.03819, -74.99007 40.03643, -74.99409 40.03341, -74.99530 40.03257, -74.99620 40.03193, -74.99711 40.03129, -74.99817 40.03051, -75.00062 40.02870, -75.00198 40.02798, -75.00335 40.02726, -75.00546 40.03110, -75.00533 40.03118, -75.00522 40.03126, -75.00508 40.03134, -75.00498 40.03143, -75.00487 40.03151, -75.00471 40.03168, -75.00465 40.03178, -75.00457 40.03187, -75.00455 40.03191, -75.00456 40.03194, -75.00464 40.03202, -75.00473 40.03207, -75.00485 40.03212, -75.00497 40.03215, -75.00508 40.03216, -75.00519 40.03215, -75.00529 40.03214, -75.00548 40.03213, -75.00559 40.03210, -75.00570 40.03205, -75.00582 40.03204, -75.00592 40.03204, -75.00610 40.03220, -75.00621 40.03219, -75.00651 40.03233, -75.00694 40.03258, -75.00729 40.03289, -75.00741 40.03309, -75.00741 40.03330, -75.00728 40.03375, -75.00722 40.03412, -75.00726 40.03439, -75.00739 40.03471, -75.00766 40.03505, -75.00795 40.03534, -75.00818 40.03551, -75.00861 40.03557, -75.00928 40.03547, -75.01001 40.03522, -75.01076 40.03475, -75.01106 40.03450, -75.01119 40.03464, -75.01122 40.03471, -75.01128 40.03479, -75.01140 40.03491, -75.01148 40.03496, -75.01159 40.03503, -75.01178 40.03514, -75.01181 40.03518, -75.01222 40.03553, -75.01196 40.03621, -75.01225 40.03654, -75.01131 40.03704, -75.01195 40.03755, -75.01216 40.03772, -75.01254 40.03803))
126 42 101 989100 3 421019891003 Block Group 3 G5030 S 820212 566882 +40.0297287 -075.0119000 POLYGON ((-75.02251 40.03083, -75.02176 40.03124, -75.02157 40.03135, -75.02127 40.03152, -75.02056 40.03192, -75.01994 40.03227, -75.01984 40.03232, -75.01814 40.03327, -75.01805 40.03332, -75.01797 40.03336, -75.01787 40.03329, -75.01710 40.03270, -75.01666 40.03231, -75.01632 40.03190, -75.01611 40.03154, -75.01587 40.03125, -75.01558 40.03106, -75.01505 40.03085, -75.01464 40.03074, -75.01430 40.03070, -75.01382 40.03072, -75.01340 40.03083, -75.01294 40.03107, -75.01262 40.03139, -75.01234 40.03193, -75.01215 40.03262, -75.01198 40.03349, -75.01184 40.03380, -75.01159 40.03408, -75.01106 40.03450, -75.01076 40.03475, -75.01001 40.03522, -75.00928 40.03547, -75.00861 40.03557, -75.00818 40.03551, -75.00795 40.03534, -75.00766 40.03505, -75.00739 40.03471, -75.00726 40.03439, -75.00722 40.03412, -75.00728 40.03375, -75.00741 40.03330, -75.00741 40.03309, -75.00729 40.03289, -75.00694 40.03258, -75.00651 40.03233, -75.00621 40.03219, -75.00610 40.03220, -75.00592 40.03204, -75.00582 40.03204, -75.00570 40.03205, -75.00559 40.03210, -75.00548 40.03213, -75.00529 40.03214, -75.00519 40.03215, -75.00508 40.03216, -75.00497 40.03215, -75.00485 40.03212, -75.00473 40.03207, -75.00464 40.03202, -75.00456 40.03194, -75.00455 40.03191, -75.00457 40.03187, -75.00465 40.03178, -75.00471 40.03168, -75.00487 40.03151, -75.00498 40.03143, -75.00508 40.03134, -75.00522 40.03126, -75.00533 40.03118, -75.00546 40.03110, -75.00335 40.02726, -75.00385 40.02700, -75.01037 40.02249, -75.01242 40.02092, -75.01324 40.02030, -75.01378 40.02017, -75.01558 40.02313, -75.01977 40.02793, -75.02180 40.03026, -75.02194 40.03045, -75.02251 40.03083))
156 42 101 028300 1 421010283001 Block Group 1 G5030 S 69892 0 +40.0299231 -075.1408226 POLYGON ((-75.14202 40.02998, -75.14200 40.03005, -75.14167 40.03160, -75.14088 40.03149, -75.14010 40.03140, -75.13930 40.03129, -75.13966 40.02974, -75.13998 40.02824, -75.14076 40.02835, -75.14156 40.02845, -75.14233 40.02854, -75.14202 40.02998))
158 42 101 028400 1 421010284001 Block Group 1 G5030 S 94792 0 +40.0293965 -075.1380180 POLYGON ((-75.13966 40.02974, -75.13930 40.03129, -75.13848 40.03118, -75.13769 40.03108, -75.13725 40.03102, -75.13722 40.03102, -75.13676 40.03096, -75.13702 40.02980, -75.13703 40.02974, -75.13709 40.02941, -75.13679 40.02938, -75.13643 40.02933, -75.13616 40.02930, -75.13580 40.02925, -75.13614 40.02774, -75.13648 40.02779, -75.13676 40.02782, -75.13709 40.02787, -75.13742 40.02792, -75.13792 40.02798, -75.13837 40.02803, -75.13917 40.02814, -75.13998 40.02824, -75.13966 40.02974))
len(philly_block_groups)
1338

Step 7: Merge the demographic data with geometries

Merge based on multiple columns: state, county, tract, and block group IDs.

The relevant columns are:

  • “STATEFP”, “COUNTYFP”, “TRACTCE”, “BLKGRCE” in the spatial data
  • “state”, “county”, “tract”, “block group” in the non-spatial data
philly_demo_final = philly_block_groups.merge(
    philly_demo_data,
    left_on=["STATEFP", "COUNTYFP", "TRACTCE", "BLKGRPCE"],
    right_on=["state", "county", "tract", "block group"],
)
philly_demo_final.head()
STATEFP COUNTYFP TRACTCE BLKGRPCE GEOID NAMELSAD MTFCC FUNCSTAT ALAND AWATER INTPTLAT INTPTLON geometry NAME B03002_001E B03002_003E B03002_004E B03002_005E B03002_006E B03002_007E B03002_008E B03002_009E B03002_012E state county tract block group
0 42 101 989100 2 421019891002 Block Group 2 G5030 S 373653 7060 +40.0373207 -075.0177378 POLYGON ((-75.02195 40.03435, -75.02191 40.03451, -75.02173 40.03482, -75.02151 40.03515, -75.02135 40.03544, -75.02129 40.03562, -75.02130 40.03582, -75.02134 40.03607, -75.02150 40.03638, -75.02163 40.03663, -75.02181 40.03702, -75.02168 40.03709, -75.01967 40.03813, -75.01902 40.03847, -75.01843 40.03877, -75.01783 40.03908, -75.01703 40.03950, -75.01621 40.03991, -75.01535 40.03894, -75.01500 40.03910, -75.01432 40.03945, -75.01254 40.03803, -75.01216 40.03772, -75.01195 40.03755, -75.01131 40.03704, -75.01225 40.03654, -75.01530 40.03485, -75.01790 40.03340, -75.01797 40.03336, -75.01817 40.03350, -75.01862 40.03366, -75.01959 40.03374, -75.01986 40.03376, -75.02000 40.03377, -75.02011 40.03377, -75.02022 40.03378, -75.02043 40.03379, -75.02083 40.03378, -75.02125 40.03374, -75.02142 40.03375, -75.02157 40.03381, -75.02173 40.03392, -75.02180 40.03401, -75.02189 40.03411, -75.02195 40.03422, -75.02195 40.03435)) Block Group 2, Census Tract 9891, Philadelphia County, Pennsylvania 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 42 101 989100 2
1 42 101 989100 4 421019891004 Block Group 4 G5030 S 1399991 948653 +40.0407424 -074.9975532 POLYGON ((-75.01254 40.03803, -75.01195 40.03824, -75.01165 40.03836, -75.01134 40.03848, -75.01104 40.03860, -75.01074 40.03873, -75.01045 40.03887, -75.01016 40.03901, -75.01010 40.03904, -75.00987 40.03915, -75.00959 40.03930, -75.00943 40.03937, -75.00901 40.03959, -75.00873 40.03973, -75.00844 40.03988, -75.00817 40.04003, -75.00789 40.04019, -75.00735 40.04051, -75.00681 40.04084, -75.00654 40.04100, -75.00628 40.04116, -75.00519 40.04181, -75.00351 40.04282, -75.00297 40.04315, -75.00062 40.04458, -75.00035 40.04474, -75.00008 40.04490, -74.99981 40.04507, -74.99954 40.04523, -74.99873 40.04572, -74.99712 40.04669, -74.99631 40.04718, -74.99627 40.04720, -74.99540 40.04644, -74.99472 40.04584, -74.99410 40.04530, -74.99382 40.04504, -74.99349 40.04476, -74.99320 40.04449, -74.99288 40.04421, -74.99227 40.04368, -74.99166 40.04313, -74.99098 40.04253, -74.99094 40.04252, -74.99061 40.04237, -74.99030 40.04238, -74.98657 40.03896, -74.98764 40.03819, -74.99007 40.03643, -74.99409 40.03341, -74.99530 40.03257, -74.99620 40.03193, -74.99711 40.03129, -74.99817 40.03051, -75.00062 40.02870, -75.00198 40.02798, -75.00335 40.02726, -75.00546 40.03110, -75.00533 40.03118, -75.00522 40.03126, -75.00508 40.03134, -75.00498 40.03143, -75.00487 40.03151, -75.00471 40.03168, -75.00465 40.03178, -75.00457 40.03187, -75.00455 40.03191, -75.00456 40.03194, -75.00464 40.03202, -75.00473 40.03207, -75.00485 40.03212, -75.00497 40.03215, -75.00508 40.03216, -75.00519 40.03215, -75.00529 40.03214, -75.00548 40.03213, -75.00559 40.03210, -75.00570 40.03205, -75.00582 40.03204, -75.00592 40.03204, -75.00610 40.03220, -75.00621 40.03219, -75.00651 40.03233, -75.00694 40.03258, -75.00729 40.03289, -75.00741 40.03309, -75.00741 40.03330, -75.00728 40.03375, -75.00722 40.03412, -75.00726 40.03439, -75.00739 40.03471, -75.00766 40.03505, -75.00795 40.03534, -75.00818 40.03551, -75.00861 40.03557, -75.00928 40.03547, -75.01001 40.03522, -75.01076 40.03475, -75.01106 40.03450, -75.01119 40.03464, -75.01122 40.03471, -75.01128 40.03479, -75.01140 40.03491, -75.01148 40.03496, -75.01159 40.03503, -75.01178 40.03514, -75.01181 40.03518, -75.01222 40.03553, -75.01196 40.03621, -75.01225 40.03654, -75.01131 40.03704, -75.01195 40.03755, -75.01216 40.03772, -75.01254 40.03803)) Block Group 4, Census Tract 9891, Philadelphia County, Pennsylvania 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 42 101 989100 4
2 42 101 989100 3 421019891003 Block Group 3 G5030 S 820212 566882 +40.0297287 -075.0119000 POLYGON ((-75.02251 40.03083, -75.02176 40.03124, -75.02157 40.03135, -75.02127 40.03152, -75.02056 40.03192, -75.01994 40.03227, -75.01984 40.03232, -75.01814 40.03327, -75.01805 40.03332, -75.01797 40.03336, -75.01787 40.03329, -75.01710 40.03270, -75.01666 40.03231, -75.01632 40.03190, -75.01611 40.03154, -75.01587 40.03125, -75.01558 40.03106, -75.01505 40.03085, -75.01464 40.03074, -75.01430 40.03070, -75.01382 40.03072, -75.01340 40.03083, -75.01294 40.03107, -75.01262 40.03139, -75.01234 40.03193, -75.01215 40.03262, -75.01198 40.03349, -75.01184 40.03380, -75.01159 40.03408, -75.01106 40.03450, -75.01076 40.03475, -75.01001 40.03522, -75.00928 40.03547, -75.00861 40.03557, -75.00818 40.03551, -75.00795 40.03534, -75.00766 40.03505, -75.00739 40.03471, -75.00726 40.03439, -75.00722 40.03412, -75.00728 40.03375, -75.00741 40.03330, -75.00741 40.03309, -75.00729 40.03289, -75.00694 40.03258, -75.00651 40.03233, -75.00621 40.03219, -75.00610 40.03220, -75.00592 40.03204, -75.00582 40.03204, -75.00570 40.03205, -75.00559 40.03210, -75.00548 40.03213, -75.00529 40.03214, -75.00519 40.03215, -75.00508 40.03216, -75.00497 40.03215, -75.00485 40.03212, -75.00473 40.03207, -75.00464 40.03202, -75.00456 40.03194, -75.00455 40.03191, -75.00457 40.03187, -75.00465 40.03178, -75.00471 40.03168, -75.00487 40.03151, -75.00498 40.03143, -75.00508 40.03134, -75.00522 40.03126, -75.00533 40.03118, -75.00546 40.03110, -75.00335 40.02726, -75.00385 40.02700, -75.01037 40.02249, -75.01242 40.02092, -75.01324 40.02030, -75.01378 40.02017, -75.01558 40.02313, -75.01977 40.02793, -75.02180 40.03026, -75.02194 40.03045, -75.02251 40.03083)) Block Group 3, Census Tract 9891, Philadelphia County, Pennsylvania 939.0 62.0 702.0 0.0 6.0 0.0 0.0 16.0 153.0 42 101 989100 3
3 42 101 028300 1 421010283001 Block Group 1 G5030 S 69892 0 +40.0299231 -075.1408226 POLYGON ((-75.14202 40.02998, -75.14200 40.03005, -75.14167 40.03160, -75.14088 40.03149, -75.14010 40.03140, -75.13930 40.03129, -75.13966 40.02974, -75.13998 40.02824, -75.14076 40.02835, -75.14156 40.02845, -75.14233 40.02854, -75.14202 40.02998)) Block Group 1, Census Tract 283, Philadelphia County, Pennsylvania 470.0 0.0 470.0 0.0 0.0 0.0 0.0 0.0 0.0 42 101 028300 1
4 42 101 028400 1 421010284001 Block Group 1 G5030 S 94792 0 +40.0293965 -075.1380180 POLYGON ((-75.13966 40.02974, -75.13930 40.03129, -75.13848 40.03118, -75.13769 40.03108, -75.13725 40.03102, -75.13722 40.03102, -75.13676 40.03096, -75.13702 40.02980, -75.13703 40.02974, -75.13709 40.02941, -75.13679 40.02938, -75.13643 40.02933, -75.13616 40.02930, -75.13580 40.02925, -75.13614 40.02774, -75.13648 40.02779, -75.13676 40.02782, -75.13709 40.02787, -75.13742 40.02792, -75.13792 40.02798, -75.13837 40.02803, -75.13917 40.02814, -75.13998 40.02824, -75.13966 40.02974)) Block Group 1, Census Tract 284, Philadelphia County, Pennsylvania 1300.0 0.0 938.0 0.0 334.0 0.0 0.0 0.0 28.0 42 101 028400 1

We’re done! Plot it to make sure it makes sense

Plot the total population using geopandas.explore()…

philly_demo_final.explore(column="B03002_001E", tiles="CartoDB positron")
Make this Notebook Trusted to load map: File -> Trust Notebook

Now let’s prep the data for the dot map

  1. Rename columns to more user-friendly versions
  2. Add a general “Other” category
# Rename columns
philly_demo_final = philly_demo_final.rename(
    columns={
        "B03002_001E": "Total",  # Total
        "B03002_003E": "White",  # Not Hispanic, White
        "B03002_004E": "Black",  # Not Hispanic, Black
        "B03002_005E": "AI/AN",  # Not Hispanic, American Indian
        "B03002_006E": "Asian",  # Not Hispanic, Asian
        "B03002_007E": "NH/PI",  # Not Hispanic, Native Hawaiian
        "B03002_008E": "Other_",  # Not Hispanic, Other
        "B03002_009E": "Two Plus",  # Not Hispanic, Two or More Races
        "B03002_012E": "Hispanic",  # Hispanic
    }
)
# Add an "Other" column 
cols = ['AI/AN', 'NH/PI','Other_', 'Two Plus']
philly_demo_final['Other'] = philly_demo_final[cols].sum(axis=1)

Define a function to create random points

Given a polygon, create randomly distributed points that fall within the polygon.

from shapely.geometry import Point
def random_points_in_polygon(number, polygon):
    """
    Generate a random number of points within the 
    specified polygon.
    """
    points = []
    min_x, min_y, max_x, max_y = polygon.bounds
    i= 0
    while i < number:
        point = Point(np.random.uniform(min_x, max_x), np.random.uniform(min_y, max_y))
        if polygon.contains(point):
            points.append(point)
            i += 1
    return points

Random points example

# get the first block group polygon in the data set
geo = philly_demo_final.iloc[0].geometry

geo

fig, ax = plt.subplots(figsize=(6, 6))

# Generate some random points
random_points = random_points_in_polygon(100, geo)

# Plot random points
gpd.GeoSeries(random_points).plot(ax=ax, markersize=20, color="red")

# Plot boundary of block group
gpd.GeoSeries([geo]).plot(ax=ax, facecolor="none", edgecolor="black")

ax.set_axis_off()

def generate_dot_map(data, people_per_dot):
    """
    Given a GeoDataFrame with demographic columns, generate a dot 
    map according to the population in each geometry.
    """
    results = []
    for field in ["White", "Hispanic", "Black", "Asian", "Other"]:

        # generate random points
        pts = data.apply(
            lambda row: random_points_in_polygon(
                row[field] / people_per_dot, row["geometry"]
            ),
            axis=1,
        )

        # combine into single GeoSeries
        pts = gpd.GeoSeries(pts.apply(pd.Series).stack(), dtype=object, crs=data["geometry"].crs)
        pts.name = "geometry"

        # make into a GeoDataFrame
        pts = gpd.GeoDataFrame(pts)
        pts["field"] = field

        # save
        results.append(pts)

    return gpd.GeoDataFrame(pd.concat(results), crs=data["geometry"].crs).reset_index(
        drop=True
    )

Calculate the dot map

dot_map = generate_dot_map(philly_demo_final, people_per_dot=50)
print("number of points = ", len(dot_map))
number of points =  34470
dot_map.tail()
geometry field
34465 POINT (-75.23781 40.06410) Other
34466 POINT (-75.23271 40.06475) Other
34467 POINT (-75.07932 40.03467) Other
34468 POINT (-75.08050 40.03537) Other
34469 POINT (-75.08110 40.03554) Other

Now let’s plot it

# setup a custom color map from ColorBrewer
from matplotlib.colors import ListedColormap


colors = {
    "Black": "steelblue",
    "White": "tomato",
    "Hispanic": "khaki",
    "Asian": "palegreen",
    "Other": "darkgray",
}

cmap = ListedColormap([t[1] for t in sorted(colors.items())])
# Convert to 3857
dot_map_3857 = dot_map.to_crs(epsg=3857)
# Initialize the figure and axes
fig, ax = plt.subplots(figsize=(10, 10), facecolor="#2a2a2a")

# Plot
dot_map_3857.plot(
    ax=ax,
    column="field",
    categorical=True,
    legend=True,
    alpha=1,
    markersize=0.5,
    cmap=cmap,
    legend_kwds=dict(labelcolor="white"),
)

# format
ax.set_title("Philadelphia, PA", fontsize=16, color="white")
ax.text(
    0.5,
    0.95,
    "1 dot = 50 people",
    fontsize=12,
    transform=ax.transAxes,
    ha="center",
    color="white",
)
ax.set_axis_off()

That’s it!

  • Next week: working with big (1M+ rows) datasets
  • See you on Monday!
Content 2023 by Nick Hand, Quarto layout adapted from Andrew Heiss’s Data Visualization with R course
All content licensed under a Creative Commons Attribution-NonCommercial 4.0 International license (CC BY-NC 4.0)
 
Made with and Quarto
View the source at GitHub