Python打卡训练营day6——2025.04.25

数据初步可视化

  1. 单特征可视化:连续变量箱线图(还说了核密度直方图)、离散特征直方图
  2. 特征和标签关系可视化
  3. 箱线图美化--->直方图
找到连续特征
import pandas as pd
data=pd.read_csv('data.csv')
data.head()
# 实际上,实现上述操作,更简单的方法如下,借助select_dtypes方法。
continuous_features = data.select_dtypes(include=['float64', 'int64']).columns.tolist()
continuous_features

箱线图

import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd
 
# 设置全局字体为支持中文的字体 (例如 SimHei)
plt.rcParams['font.sans-serif'] = ['SimHei']
# 解决负号'-'显示为方块的问题
plt.rcParams['axes.unicode_minus'] = False
 
sns.boxplot(x=data['Annual Income'])
plt.title('年收入 箱线图')  # 使用中文标题
plt.xlabel('年收入')      # 使用中文标签
plt.show()

绘制直方图

# 还有很多新的参数可以调整图像 但是不需要记忆 用的时候问下ai即可
sns.histplot(x=data['Years in current job'])
plt.title('在当前工作年限 直方图')
plt.xlabel('在当前工作年限')
plt.ylabel('员工数量')
plt.xticks(rotation=45, ha='right')  # 旋转45度,并右对齐
plt.tight_layout()  # 自动调整子图参数,提供足够的空间
plt.show()

绘制特征和标签的关系

连续特征
画2个箱线图
# 另一种可视化方式:箱线图
plt.figure(figsize=(8, 6))
sns.boxplot(x='Credit Default', y='Annual Income', data=data)
plt.title('Annual Income vs. Credit Default')
plt.xlabel('Credit Default')
plt.ylabel('Annual Income')
plt.show()

小提琴图

# 另一种可视化方式:小提琴图
# 相较于箱线图,小提琴图更加美观
plt.figure(figsize=(8, 6))
sns.violinplot(x='Credit Default', y='Annual Income', data=data)
plt.title('Annual Income vs. Credit Default')
plt.xlabel('Credit Default')
plt.ylabel('Annual Income')
plt.show()

箱线图美化—>直方图

# 但是实际上连续变量也可以绘制类似于直方图的图像,可以用核密度估计来完成边缘的柔和化
# 绘制 Current Credit Balance 和 Credit Default 的关系图
plt.figure(figsize=(8, 6))
sns.histplot(x='Current Credit Balance', hue='Credit Default', data=data, kde=True, element="step")
plt.title('Current Credit Balance vs. Credit Default')
plt.xlabel('Current Credit Balance')
plt.ylabel('Count')
plt.show()

绘制离散变量和标签的关系


# 绘制离散变量和标签的关系
# 绘制 Months since last delinquent 和 Credit Default 的关系图
plt.figure(figsize=(8, 6))
sns.countplot(x='Months since last delinquent', hue='Credit Default', data=data)
plt.title('Months since last delinquent vs. Credit Default')
plt.xlabel('Months since last delinquent')
plt.ylabel('Count')
plt.show()

 

@浙大疏锦行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值