Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 1

categorcial_variables =

["id","limit_bal","sex","education","marriage","age","pay_0","pay_2","pay_3","pay_4
","bill_amt1","bill_amt2","bill_amt3","bill_amt4","bill_amt5","bill_amt6","pay_amt1
","pay_amt2","pay_amt3","pay_amt4","pay_amt5","pay_amt6","y"]
for col in categorcial_variables:
plt.figure(figsize=(10,4))
sns.barplot(bank_data[col].value_counts().values,
bank_data[col].value_counts().index)
plt.title(col)
plt.tight_layout()

for col in categorcial_variables:


plt.figure(figsize=(10,4))
#Returns counts of unique values for each outcome for each feature.
pos_counts = bank_data.loc[bank_data.y.values == '0', col].value_counts()
neg_counts = bank_data.loc[bank_data.y.values == '1', col].value_counts()

all_counts = list(set(list(pos_counts.index) + list(neg_counts.index)))

#Counts of how often each outcome was recorded.


freq_pos = (bank_data.y.values == '0').sum()
freq_neg = (bank_data.y.values == '1').sum()

pos_counts = pos_counts.to_dict()
neg_counts = neg_counts.to_dict()

all_index = list(all_counts)
all_counts = [pos_counts.get(k, 0) / freq_pos - neg_counts.get(k, 0) / freq_neg
for k in all_counts]

sns.barplot(all_counts, all_index)
plt.title(col)
plt.tight_layout()

You might also like