image_output_1.png
import matplotlib.pyplot as plt

import numpy as np

import pandas as pd

import seaborn as sns

df = pd.read_excel('/kaggle/input/students-employability-dataset/Student-Employability-Datasets.xlsx')
df.shape

new_df = df.drop(columns=['CLASS', 'Name of Student', 'Student Performance Rating'])
total = pd.DataFrame({'Skills': new_df.columns, 'Total Value': new_df.sum()})

fig = plt.figure(figsize=(15,7.5))
fig.patch.set_facecolor('ghostwhite')

sns.set_theme(style="darkgrid", palette="deep")

ax = sns.barplot(
    y = 'Skills',
    x='Total Value',
    data = total.sort_values(
        'Total Value',
        ascending = False
    )
)

plt.title('Summation of Values per Skill')
plt.show()

df_employed = df.loc[df['CLASS'] == 'Employable']
df_employed = df_employed.drop(columns=['Name of Student', 'CLASS'])
ave_skills = pd.DataFrame({'Average Score': df_employed.mean()})
ave_skills

pie_data = ave_skills.drop(index=['Student Performance Rating'], axis=0)
pie_data

palette_color = sns.color_palette(palette = 'deep')

fig = plt.figure(figsize=(20,10))
fig.patch.set_facecolor('ghostwhite')
  
plt.pie(
    pie_data['Average Score'],
    labels = pie_data.index,
    colors = palette_color,
    autopct = '%.0f%%'
)

centre_circle = plt.Circle((0, 0), 0.72, fc='white')

fig = plt.gcf()
fig.gca().add_artist(centre_circle)

plt.title('Percentage Distribution of Skills for Employable on Average')
plt.show()

fig = plt.figure(figsize=(15,7.5))
fig.patch.set_facecolor('ghostwhite')

sns.set_theme(style="darkgrid", palette="deep")

sns.barplot(
    y = ave_skills.index,
    x= 'Average Score',
    data = ave_skills.sort_values(
        'Average Score',
        ascending = False
    )
)

plt.xticks(np.arange(0,5.25,0.25))
plt.title('Average Score of the Employable Students per Category')
plt.show()

df_ave = pd.DataFrame({'Student': df['Name of Student'].loc[df['CLASS'] == 'Employable'], 'Average Score': df.loc[df['CLASS'] == 'Employable']._get_numeric_data().mean(axis=1)})

fig = plt.figure(figsize=(15, 7.5))
fig.patch.set_facecolor('ghostwhite')
sns.set_theme(style='darkgrid', palette='dark')
ax = sns.histplot(x='Average Score', data=df_ave)
df_ave.plot(kind='kde', ax=ax, secondary_y=True, color='orange')
plt.xticks(np.arange(2, 6.25, 0.25))
plt.title('Mean Scores per Student Histogram for Employable')
plt.show()