import pandas as pd
data = pd.read_csv("thanksgiving.csv", encoding="Latin-1")
data.head()
RespondentID | Do you celebrate Thanksgiving? | What is typically the main dish at your Thanksgiving dinner? | What is typically the main dish at your Thanksgiving dinner? - Other (please specify) | How is the main dish typically cooked? | How is the main dish typically cooked? - Other (please specify) | What kind of stuffing/dressing do you typically have? | What kind of stuffing/dressing do you typically have? - Other (please specify) | What type of cranberry saucedo you typically have? | What type of cranberry saucedo you typically have? - Other (please specify) | ... | Have you ever tried to meet up with hometown friends on Thanksgiving night? | Have you ever attended a "Friendsgiving?" | Will you shop any Black Friday sales on Thanksgiving Day? | Do you work in retail? | Will you employer make you work on Black Friday? | How would you describe where you live? | Age | What is your gender? | How much total combined money did all members of your HOUSEHOLD earn last year? | US Region | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 4337954960 | Yes | Turkey | NaN | Baked | NaN | Bread-based | NaN | None | NaN | ... | Yes | No | No | No | NaN | Suburban | 18 - 29 | Male | $75,000 to $99,999 | Middle Atlantic |
1 | 4337951949 | Yes | Turkey | NaN | Baked | NaN | Bread-based | NaN | Other (please specify) | Homemade cranberry gelatin ring | ... | No | No | Yes | No | NaN | Rural | 18 - 29 | Female | $50,000 to $74,999 | East South Central |
2 | 4337935621 | Yes | Turkey | NaN | Roasted | NaN | Rice-based | NaN | Homemade | NaN | ... | Yes | Yes | Yes | No | NaN | Suburban | 18 - 29 | Male | $0 to $9,999 | Mountain |
3 | 4337933040 | Yes | Turkey | NaN | Baked | NaN | Bread-based | NaN | Homemade | NaN | ... | Yes | No | No | No | NaN | Urban | 30 - 44 | Male | $200,000 and up | Pacific |
4 | 4337931983 | Yes | Tofurkey | NaN | Baked | NaN | Bread-based | NaN | Canned | NaN | ... | Yes | No | No | No | NaN | Urban | 30 - 44 | Male | $100,000 to $124,999 | Pacific |
5 rows × 65 columns
data.columns
Index(['RespondentID', 'Do you celebrate Thanksgiving?', 'What is typically the main dish at your Thanksgiving dinner?', 'What is typically the main dish at your Thanksgiving dinner? - Other (please specify)', 'How is the main dish typically cooked?', 'How is the main dish typically cooked? - Other (please specify)', 'What kind of stuffing/dressing do you typically have?', 'What kind of stuffing/dressing do you typically have? - Other (please specify)', 'What type of cranberry saucedo you typically have?', 'What type of cranberry saucedo you typically have? - Other (please specify)', 'Do you typically have gravy?', 'Which of these side dishes aretypically served at your Thanksgiving dinner? Please select all that apply. - Brussel sprouts', 'Which of these side dishes aretypically served at your Thanksgiving dinner? Please select all that apply. - Carrots', 'Which of these side dishes aretypically served at your Thanksgiving dinner? Please select all that apply. - Cauliflower', 'Which of these side dishes aretypically served at your Thanksgiving dinner? Please select all that apply. - Corn', 'Which of these side dishes aretypically served at your Thanksgiving dinner? Please select all that apply. - Cornbread', 'Which of these side dishes aretypically served at your Thanksgiving dinner? Please select all that apply. - Fruit salad', 'Which of these side dishes aretypically served at your Thanksgiving dinner? Please select all that apply. - Green beans/green bean casserole', 'Which of these side dishes aretypically served at your Thanksgiving dinner? Please select all that apply. - Macaroni and cheese', 'Which of these side dishes aretypically served at your Thanksgiving dinner? Please select all that apply. - Mashed potatoes', 'Which of these side dishes aretypically served at your Thanksgiving dinner? Please select all that apply. - Rolls/biscuits', 'Which of these side dishes aretypically served at your Thanksgiving dinner? Please select all that apply. - Squash', 'Which of these side dishes aretypically served at your Thanksgiving dinner? Please select all that apply. - Vegetable salad', 'Which of these side dishes aretypically served at your Thanksgiving dinner? Please select all that apply. - Yams/sweet potato casserole', 'Which of these side dishes aretypically served at your Thanksgiving dinner? Please select all that apply. - Other (please specify)', 'Which of these side dishes aretypically served at your Thanksgiving dinner? Please select all that apply. - Other (please specify).1', 'Which type of pie is typically served at your Thanksgiving dinner? Please select all that apply. - Apple', 'Which type of pie is typically served at your Thanksgiving dinner? Please select all that apply. - Buttermilk', 'Which type of pie is typically served at your Thanksgiving dinner? Please select all that apply. - Cherry', 'Which type of pie is typically served at your Thanksgiving dinner? Please select all that apply. - Chocolate', 'Which type of pie is typically served at your Thanksgiving dinner? Please select all that apply. - Coconut cream', 'Which type of pie is typically served at your Thanksgiving dinner? Please select all that apply. - Key lime', 'Which type of pie is typically served at your Thanksgiving dinner? Please select all that apply. - Peach', 'Which type of pie is typically served at your Thanksgiving dinner? Please select all that apply. - Pecan', 'Which type of pie is typically served at your Thanksgiving dinner? Please select all that apply. - Pumpkin', 'Which type of pie is typically served at your Thanksgiving dinner? Please select all that apply. - Sweet Potato', 'Which type of pie is typically served at your Thanksgiving dinner? Please select all that apply. - None', 'Which type of pie is typically served at your Thanksgiving dinner? Please select all that apply. - Other (please specify)', 'Which type of pie is typically served at your Thanksgiving dinner? Please select all that apply. - Other (please specify).1', 'Which of these desserts do you typically have at Thanksgiving dinner? Please select all that apply. - Apple cobbler', 'Which of these desserts do you typically have at Thanksgiving dinner? Please select all that apply. - Blondies', 'Which of these desserts do you typically have at Thanksgiving dinner? Please select all that apply. - Brownies', 'Which of these desserts do you typically have at Thanksgiving dinner? Please select all that apply. - Carrot cake', 'Which of these desserts do you typically have at Thanksgiving dinner? Please select all that apply. - Cheesecake', 'Which of these desserts do you typically have at Thanksgiving dinner? Please select all that apply. - Cookies', 'Which of these desserts do you typically have at Thanksgiving dinner? Please select all that apply. - Fudge', 'Which of these desserts do you typically have at Thanksgiving dinner? Please select all that apply. - Ice cream', 'Which of these desserts do you typically have at Thanksgiving dinner? Please select all that apply. - Peach cobbler', 'Which of these desserts do you typically have at Thanksgiving dinner? Please select all that apply. - None', 'Which of these desserts do you typically have at Thanksgiving dinner? Please select all that apply. - Other (please specify)', 'Which of these desserts do you typically have at Thanksgiving dinner? Please select all that apply. - Other (please specify).1', 'Do you typically pray before or after the Thanksgiving meal?', 'How far will you travel for Thanksgiving?', 'Will you watch any of the following programs on Thanksgiving? Please select all that apply. - Macy's Parade', 'What's the age cutoff at your "kids' table" at Thanksgiving?', 'Have you ever tried to meet up with hometown friends on Thanksgiving night?', 'Have you ever attended a "Friendsgiving?"', 'Will you shop any Black Friday sales on Thanksgiving Day?', 'Do you work in retail?', 'Will you employer make you work on Black Friday?', 'How would you describe where you live?', 'Age', 'What is your gender?', 'How much total combined money did all members of your HOUSEHOLD earn last year?', 'US Region'], dtype='object')
data["Do you celebrate Thanksgiving?"].value_counts()
Yes 980 No 78 Name: Do you celebrate Thanksgiving?, dtype: int64
data = data[data["Do you celebrate Thanksgiving?"] == "Yes"]
data["What is typically the main dish at your Thanksgiving dinner?"].value_counts()
Turkey 859 Other (please specify) 35 Ham/Pork 29 Tofurkey 20 Chicken 12 Roast beef 11 I don't know 5 Turducken 3 Name: What is typically the main dish at your Thanksgiving dinner?, dtype: int64
data[data["What is typically the main dish at your Thanksgiving dinner?"] == "Tofurkey"]["Do you typically have gravy?"]
4 Yes 33 Yes 69 No 72 No 77 Yes 145 Yes 175 Yes 218 No 243 Yes 275 No 393 Yes 399 Yes 571 Yes 594 Yes 628 No 774 No 820 No 837 Yes 860 No 953 Yes Name: Do you typically have gravy?, dtype: object
data["Which type of pie is typically served at your Thanksgiving dinner? Please select all that apply. - Apple"].value_counts()
Apple 514 Name: Which type of pie is typically served at your Thanksgiving dinner? Please select all that apply. - Apple, dtype: int64
ate_pies = (pd.isnull(data["Which type of pie is typically served at your Thanksgiving dinner? Please select all that apply. - Apple"])
&
pd.isnull(data["Which type of pie is typically served at your Thanksgiving dinner? Please select all that apply. - Pecan"])
&
pd.isnull(data["Which type of pie is typically served at your Thanksgiving dinner? Please select all that apply. - Pumpkin"])
)
ate_pies.value_counts()
False 876 True 104 dtype: int64
data["Age"].value_counts()
45 - 59 269 60+ 258 30 - 44 235 18 - 29 185 Name: Age, dtype: int64
def extract_age(age_str):
if pd.isnull(age_str):
return None
age_str = age_str.split(" ")[0]
age_str = age_str.replace("+", "")
return int(age_str)
data["int_age"] = data["Age"].apply(extract_age)
data["int_age"].describe()
count 947.000000 mean 40.089757 std 15.352014 min 18.000000 25% 30.000000 50% 45.000000 75% 60.000000 max 60.000000 Name: int_age, dtype: float64
Although we only have a rough approximation of age, and it skews downward because we took the first value in each string (the lower bound), we can see that that age groups of respondents are fairly evenly distributed.
data["How much total combined money did all members of your HOUSEHOLD earn last year?"].value_counts()
$25,000 to $49,999 166 $50,000 to $74,999 127 $75,000 to $99,999 127 Prefer not to answer 118 $100,000 to $124,999 109 $200,000 and up 76 $10,000 to $24,999 60 $0 to $9,999 52 $125,000 to $149,999 48 $150,000 to $174,999 38 $175,000 to $199,999 26 Name: How much total combined money did all members of your HOUSEHOLD earn last year?, dtype: int64
def extract_income(income_str):
if pd.isnull(income_str):
return None
income_str = income_str.split(" ")[0]
if income_str == "Prefer":
return None
income_str = income_str.replace(",", "")
income_str = income_str.replace("$", "")
return int(income_str)
data["int_income"] = data["How much total combined money did all members of your HOUSEHOLD earn last year?"].apply(extract_income)
data["int_income"].describe()
count 829.000000 mean 75965.018094 std 59068.636748 min 0.000000 25% 25000.000000 50% 75000.000000 75% 100000.000000 max 200000.000000 Name: int_income, dtype: float64
Although we only have a rough approximation of income, and it skews downward because we took the first value in each string (the lower bound), the average income seems to be fairly high, although there is also a large standard deviation.
data[data["int_income"] < 150000]["How far will you travel for Thanksgiving?"].value_counts()
Thanksgiving is happening at my home--I won't travel at all 281 Thanksgiving is local--it will take place in the town I live in 203 Thanksgiving is out of town but not too far--it's a drive of a few hours or less 150 Thanksgiving is out of town and far away--I have to drive several hours or fly 55 Name: How far will you travel for Thanksgiving?, dtype: int64
data[data["int_income"] > 150000]["How far will you travel for Thanksgiving?"].value_counts()
Thanksgiving is happening at my home--I won't travel at all 49 Thanksgiving is local--it will take place in the town I live in 25 Thanksgiving is out of town but not too far--it's a drive of a few hours or less 16 Thanksgiving is out of town and far away--I have to drive several hours or fly 12 Name: How far will you travel for Thanksgiving?, dtype: int64
It appears that more people with high income have Thanksgiving at home than people with low income. This may be because younger students, who don't have a high income, tend to go home, whereas parents, who have higher incomes, don't.
data.pivot_table(
index="Have you ever tried to meet up with hometown friends on Thanksgiving night?",
columns='Have you ever attended a "Friendsgiving?"',
values="int_age"
)
Have you ever attended a "Friendsgiving?" | No | Yes |
---|---|---|
Have you ever tried to meet up with hometown friends on Thanksgiving night? | ||
No | 42.283702 | 37.010526 |
Yes | 41.475410 | 33.976744 |
data.pivot_table(
index="Have you ever tried to meet up with hometown friends on Thanksgiving night?",
columns='Have you ever attended a "Friendsgiving?"',
values="int_income"
)
Have you ever attended a "Friendsgiving?" | No | Yes |
---|---|---|
Have you ever tried to meet up with hometown friends on Thanksgiving night? | ||
No | 78914.549654 | 72894.736842 |
Yes | 78750.000000 | 66019.736842 |
It appears that people who are younger are more likely to attend a Friendsgiving, and try to meet up with friends on Thanksgiving.