当前位置: 首页 > 后端技术 > Python

【赵玉强老师】用Python完成数据分布特征分析

时间:2023-03-26 12:30:22 Python

在对数据的质量进行分析后,可以对数据的特征进行分析计算,还可以通过绘制图表的方式展示数据的特征.数据的特征分析有以下几种方法:分布分析、比较分析、统计分析、周期分析、贡献分析(帕累托分析)、相关分析和正态性检验。分布分析可以揭示数据的分布特征和分布类型。对于定量数据,如果想知道它的分布形式是对称的还是非对称的,找出一些极大或极小的可能值,可以通过绘制频数分布直方图和茎叶图进行直观分析;对于定性数据,您可以使用饼图和条形图直观地显示分布。下面我们通过具体的例子来演示如何分析数据的定量和定性分布。下面是需要用到的测试数据。这是1998年全年数码相机的销售订单数据,以下是前10个数据:定量数据分析,最常用的对数据进行定量分析并显示其分布的方法是直方图。这类图形也称为质量分布图,是一种统计报表图形,用一系列高低不等的竖条纹或线段表示数据的分布情况。一般来说,横轴代表数据类型,纵轴代表分布。绘制直方图一般可以按照以下步骤进行:求范围。对于同一个指标,范围越大,数据越不稳定对数据进行分组,决定按点绘制频数分布直方图绘制频数分布直方图importpandasaspdimportmatplotlib.pyplotaspltdata=pd.read_csv("/root/data/Digitalcameraorderdata.csv")#查找订单金额范围。同一个指标,范围越大,数据越不稳定dr=data['订单金额'].max()-data['订单金额'].min()print("订单金额范围为:",dr)#绘制直方图显示一年中每个月的总订单金额#将数据转换为DatFrame。这里只需要订单时间和订单金额df=pd.DataFrame({"datetime":data["ordertime"],"amount":data["orderamount"]})#取出订单中的月份timedf['datetime']=pd.to_datetime(df['datetime'])df['month']=df['datetime'].dt.month.fillna(0).astype("int")#计算每个月每月总订单量,并用直方图展示result=df.groupby('month').sum('amount')#输出数据分布直方图print(result)#绘制数据分布直方图result.plot(kind='bar')plt.xlabel('Month')plt.ylabel('TotalSales')plt.show()绘制的直方图如下所示。对于定性数据分析,数据的定性分析往往根据变量的分类类型进行分组,最常见的显示其分布的方式是饼图或条形图来描述定性变量的分布情况。例如,饼图显示数据系列中项目的大小与项目总和的比率。饼图中的数据点显示为整个饼图中的百分比。让我们以饼图为例。你只需要直接使用饼图绘制上面直方图代码中最后生成的DataFrame(结果)即可。如下。#绘制数据的饼图result.plot.pie(subplots=True,figsize=(11,11))plt.show()#注:这里的饼图是从1月到12月分类的。生成的饼图如下所示。