直方图与箱线图

直方图

常称概率直方图,概率= 频率/频数*组距

用来算概率。

箱线图

分位数,
反应数据分散程度!

### 使用 Housing 数据集绘制连续型变量的直方图箱线图 以下是导入 Housing 数据集并用 Python 绘制连续型变量直方图箱线图的详细方法。 #### 导入 Housing 数据集 Housing 数据集通常可以通过 `sklearn.datasets` 模块加载。以下代码展示了如何导入该数据集: ```python from sklearn.datasets import fetch_california_housing import pandas as pd # 加载 California Housing 数据集 housing = fetch_california_housing() df = pd.DataFrame(housing.data, columns=housing.feature_names) df['MedHouseVal'] = housing.target # 添加目标值列 ``` #### 绘制连续型变量的直方图 为了绘制连续型变量的直方图,可以使用 Matplotlib 的 `plt.hist()` 函数[^1]。以下代码以 `MedHouseVal`(房价中位数)为例,展示如何绘制直方图: ```python import matplotlib.pyplot as plt # 绘制直方图 plt.figure(figsize=(8, 6)) plt.hist(df['MedHouseVal'], bins=30, edgecolor='black', alpha=0.7) plt.title('Histogram of Median House Value', fontsize=14) plt.xlabel('Median House Value', fontsize=12) plt.ylabel('Frequency', fontsize=12) plt.grid(axis='y', linestyle='--', alpha=0.7) plt.show() ``` #### 绘制连续型变量的箱线图 箱线图可以使用 Matplotlib 的 `plt.boxplot()` 函数或 Seaborn 库中的 `sns.boxplot()` 函数绘制[^3]。以下代码展示了如何使用 Seaborn 绘制 `MedHouseVal` 的箱线图: ```python import seaborn as sns # 绘制箱线图 plt.figure(figsize=(8, 6)) sns.boxplot(x=df['MedHouseVal'], color='lightblue') plt.title('Boxplot of Median House Value', fontsize=14) plt.xlabel('Median House Value', fontsize=12) plt.grid(axis='y', linestyle='--', alpha=0.7) plt.show() ``` #### 完整代码示例 以下是一个完整的代码示例,展示如何导入 Housing 数据集并绘制连续型变量的直方图箱线图: ```python from sklearn.datasets import fetch_california_housing import pandas as pd import matplotlib.pyplot as plt import seaborn as sns # 加载 California Housing 数据集 housing = fetch_california_housing() df = pd.DataFrame(housing.data, columns=housing.feature_names) df['MedHouseVal'] = housing.target # 添加目标值列 # 绘制直方图 plt.figure(figsize=(8, 6)) plt.hist(df['MedHouseVal'], bins=30, edgecolor='black', alpha=0.7) plt.title('Histogram of Median House Value', fontsize=14) plt.xlabel('Median House Value', fontsize=12) plt.ylabel('Frequency', fontsize=12) plt.grid(axis='y', linestyle='--', alpha=0.7) plt.show() # 绘制箱线图 plt.figure(figsize=(8, 6)) sns.boxplot(x=df['MedHouseVal'], color='lightblue') plt.title('Boxplot of Median House Value', fontsize=14) plt.xlabel('Median House Value', fontsize=12) plt.grid(axis='y', linestyle='--', alpha=0.7) plt.show() ``` #### 注意事项 - 在绘制直方图时,`bins` 参数决定了直方图的分组数量,可以根据数据分布调整该参数。 - 箱线图能够清晰地显示数据的分布特征,包括中位数、四分位数和异常值等信息。 - 如果需要对多个连续型变量进行可视化,可以使用循环或子图功能批量生成图表。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值