import pandas as pd
# Create a DataFrame from the provided data
data = {
"Household_Size": [5, 4, 4, 4, 5, 6, 6, 4, 5, 5, 3, 3, 4, 4, 4, 5, 4, 5, 5, 5, 4, 4, 5, 3, 1, 1, 2, 2, 1, 1, 3, 2, 2, 3, 3, 2, 3, 5, 5, 4, 5, 4, 4, 4, 4, 4, 6, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 7, 7, 2, 2, 3, 4, 1, 1, 3, 3, 3, 3, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 6, 6, 4, 5, 6, 6, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4],
"Level_of_Education": [14, 14, 17, 16, 16, 17, 15, 17, 15, 13, 15, 15, 12, 17, 15, 15, 15, 17, 17, 15, 12, 10, 12, 14, 15, 13, 13, 13, 15, 13, 13, 13, 15, 15, 15, 12, 15, 15, 10, 12, 13, 15, 15, 12, 15, 15, 15, 15, 15, 15, 15, 12, 12, 14, 15, 15, 12, 17, 17, 16, 14, 15, 13, 15, 17, 16, 14, 15, 13, 15, 15, 14, 13, 15, 15, 17, 12, 14, 15, 12, 12, 14, 15, 15, 13, 15, 17, 17, 10, 12, 14, 14, 15, 13, 13, 14, 15, 15, 15],
}
df = pd.DataFrame(data)
# Define income groups based on quartiles of household size
q1 = df['Household_Size'].quantile(0.25)
q3 = df['Household_Size'].quantile(0.75)
def categorize_income_group(size):
if size <= q1:
return "Low Income"
elif size <= q3:
return "Middle Income"
else:
return "High Income"
# Categorize household size into income groups
df['Income_Group'] = df['Household_Size'].apply(categorize_income_group)
# Create a contingency table
contingency_table = pd.crosstab(df['Level_of_Education'], df['Income_Group'])
print("Contingency Table:")
print(contingency_table)