写在最前面
读取csv文件,绘制箱型图(竖着的),并打印出所有异常值。
更新conda及所有库
conda update -n base -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main conda
代码
import pandas as pd
import matplotlib.pyplot as plt
import matplotlib as mpl
mpl.rcParams['font.family'] = 'Microsoft YaHei' # 设置中文字体为微软雅黑
mpl.rcParams['axes.unicode_minus'] = False # 解决负号显示问题
# 读取csv文件
data = pd.read_csv('data.csv', encoding='gkb')
# 绘制箱型图
fig, ax = plt.subplots(figsize=(6,15))
ax.boxplot(data.values, vert=False)
# 设置x轴标签和标题
ax.set_yticklabels(data.columns, fontsize=12)
ax.set_xlabel('数值', fontsize=14)
ax.set_title('数据分布', fontsize=16)
# 打印异常值
for col in data.columns:
q1 = data[col].quantile(0.25)
q3 = data[col].quantile(0.75)
iqr = q3 - q1
outliers = data[(data[col] < q1 - 1.5 * iqr) | (data[col] > q3 + 1.5 * iqr)][col]
if not outliers.empty:
print(f'{
col}的异常值:\n{
outliers}\n')
plt.show()