数据质量分析

本文读取了csv文件,完成了下列要求

  • 输出数据集的基本信息和最大值,最小值,平均值;
  • 统计缺失的变量和样本个数;
  • 通过箱式图判断异常点。

1.读取csv文件

import pandas as pd
from matplotlib import  pyplot as plt
import matplotlib as mpl

#读取文件数据
csv_file = r"C:/Users/Sun Tianwen/Desktop/catering_sale.csv"
csv_data = pd.read_csv(csv_file, low_memory=False,encoding='gbk')
csv_df = pd.DataFrame(csv_data)
print(csv_df)

结果

            日期      销量
0     2015/3/1    51.0
1    2015/2/28  2618.2
2    2015/2/27  2608.4
3    2015/2/26  2651.9
4    2015/2/25  3442.1
..         ...     ...
196   2014/8/6  2915.8
197   2014/8/5  2618.1
198   2014/8/4  2993.0
199   2014/8/3  3436.4
200   2014/8/2  2261.7

2.获取最大值、最小值和平均值

#求最大值、最小值及平均值
print("最小值:")
print(csv_data.min())
print("最大值:")
print(csv_data.max())
print("平均值:")
print(csv_data.mean())

结果

最小值:
日期    2014/10/1
销量         22.0
dtype: object
最大值: 日期
2015/3/1 销量 9106.44
dtype: object
平均值: 销量
2755.2147 dtype: float64

3、统计缺失的变量和样本个数

#统计缺失变量个数
print("缺失变量个数:")
print(csv_df.isnull().sum())

#样本个数
print("样本个数:")
print(csv_df["销量"].shape[0])

结果

缺失变量个数:
日期    0
销量    1
dtype: int64
缺失样本个数:
201

4、绘制箱式图

#绘制箱形图
mpl.rcParams['font.sans-serif'] = ['FangSong']  # 指定默认字体
mpl.rcParams['axes.unicode_minus'] = False
y=csv_df["销量"]
plt.title("箱型图",fontsize=20)    #设置标题
plt.ylabel("销量")    #设置y轴标签
plt.grid(linestyle='--',alpha=0.5)  #设置表格线类型,透明度为0.5
plt.boxplot(y)  #画图
plt.show()

结果

 

图中单独的点即为异常值,看图可知有6个异常值

 

posted @ 2021-03-13 23:04  qwer123875  阅读(102)  评论(1)    收藏  举报