【最新】python数据分析课程报告论文(附代码数据)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用python进行数据分析
一、样本集
本样本集来源于某高中某班78位同学的一次月考的语文成绩。因为每位同学的成绩都是独立的随机变量,遂可以保证得到的观测值也是独立且随机的
样本如下:
grades=[131,131,127,123,126,129,116,114,115,116,123,122,118,
121,126,121,126,121,111,119,124,124,121,116,114,116,
116,118,112,109,114,116,116,118,112,109,114,110,114,
110,113,117,113,121,105,127,110,105,111,112,104,103,
130,102,118,101,112,109,107,94,107,106,105,101,85,95,
97,99,83,87,82,79,99,90,78,86,75,66];
二、数据分析
1.中心位置(均值、中位数、众数)
数据的中心位置是我们最容易想到的数据特征。借由中心位置,我们可以知道数据的一个平均情况,如果要对新数据进行预测,那么平均情况是非常直观地选择。数据的中心位置可分为均值(Mean),中位数(Median),众数(Mode)。其中均值和中位数用于定量的数据,众数用于定性的数据。
均值:利用python编写求平均值的函数很容易得到本次样本的平均值
得到本次样本均值为109.9
中位数:113
众数:116
2.频数分析
2.1频数分布直方图
柱状图是以柱的高度来指代某种类型的频数,使用Matplotlib对成绩这一定性变量绘制柱状图的代码如下:
这里我主要使用matplotlib.pyplot as plt上的bar()函数画出直方图。这里所使用的text 和title方法是用来给图形加上标注和题目的。运行程序可得到如下频率分布直方图:
这里我将数据分为八组:60~70,70~80,80~90,90~100,100~110,110~120,120~130,130~140;每组对应中点为:66,77.3,84.6,95.6,105.2,114.4,123.9,130.7
每组对应频率:0.01,0.04,0.06,0.08,0.18,0.38,0.21,0.04
从该频率直方图我们可以看出该班成绩主要分布在100~130区间,当然也存在130多的高分和60多的低分。总体成绩还算不错,低于均分的同学要继续努力。
2.2相对频率折线图
这里我主要使用matplotlib.pyplot as plt上的plot()函数画出折线图。程序代码如下:
运行程序可得到如下折线图:
通过折线图我们可以更加清楚的明白这个班级的成绩分布,高于一百分的同学占绝大多数,而低于一百分的也占有一定的比例。
2.3箱须图
中位数:113
上四分位数:Q1=124
下四分位数:Q2=105
四分位数差:IQR=19
此时可以绘制该班的箱须图进行成绩分析,这里使用Matplotlib中的boxplot绘制关于身高的箱形图,程序如下: