《数据仓库与数据挖掘》课件 第6章 Pandas与Matplotlib_第1页
《数据仓库与数据挖掘》课件 第6章 Pandas与Matplotlib_第2页
《数据仓库与数据挖掘》课件 第6章 Pandas与Matplotlib_第3页
《数据仓库与数据挖掘》课件 第6章 Pandas与Matplotlib_第4页
《数据仓库与数据挖掘》课件 第6章 Pandas与Matplotlib_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第6章Pandas与Matplotlib本章主要内容6.1Pandas6.2时间序列6.3Matplotlib6.4课后习题6.1Pandas6.1pandas——问题引入问题:一个数据表由什么组成?表1一季度股票收益表(单位:元)6.1pandas——问题引入对于某一列数据业务含义的描述第一种描述方式:这一列的数据分别是“1010、2010、3010、4010、5010”,这些数据对应的索引分别是“王二麻、张三、李四、王五、赵六”第二种描述方法:这一列数据分别表示“王二麻股票收益是1010”、“张三股票收益是2010”、“李四股票收益是3010”、“王五股票收益是4010”、“赵六股票收益是5010”如果使用numpy中的ndarray是否合理?如果使用字典型是否合理?6.1.1pandas中的SeriesPandas是一个非常强大的数据分析工具包(表格处理神器),可以进行丰富的数学运算和操作、灵活的缺失值处理,并且还提供了时间序列等数据分析常用功能。安装方法如下:Series是pandas提供的一种数据类型,和Seriess1(ndarray)很像,但是由一组数据和一组与之相关的索引组成,可以理解为带有索引的一列数据。6.1.2Series的创建方法一:通过pandas中的Series方法将原生python列表改造成Seires(注意index选项的使用)方法二:通过pandas中的Series将numpy中的ndarray改造成Series(注意index选项的使用)方法三:通过pandas中的Series方法将原生python中的字典型改造成Series注意:区分下标索引和标签索引6.1.3Series的索引index和values属性下标索引和标签索引(均支持普通索引、切片、布尔型索引等索引方法)loc和iloc(均支持普通索引、切片、布尔型索引等索引方法)6.1.4Series的数据对齐普通对位计算对位计算时的自动对齐(以标签索引为主,注意:如果无法对齐,则用nan补位或用其他数字补位)6.1.5Series的空值处理空值的判断删除填充替代Series数学计算Series常见的统计类计算(与numpy几乎一模一样)求Seriess1中每个元素的绝对值:s1.abs()求Seriess1中每个元素四舍五入值:s1.round()求Seriess1中每个元素向上取整:s1.ceil()求Seriess1中每个元素向下取整:s1.floor()求Seriess1中所有元素的平均值:s1.mean()求Seriess1中所有元素的方差:s1.var()求Seriess1中所有元素的标准差:s1.std()求Seriess1中最大值:s1.max()求Seriess1中最小值:s1.min()求Seriess1中最大值对应的索引:s1.argmax()求Seriess1中最小值对应的索引:s1.argmin().......6.1.6pandas中的DataFrameDataFrame是Pandas最重要的数据类型,它是一个表格型的数据结构,主要面向表格数据的处理。DataFrame可以被看做是由Series组成的字典,这些Series共用一个索引。股票1:股票2:股票3:理解为6.1.6pandas中的DataFrame——创建DataFrame方法一:使用pandas中的dataframe方法,将多个Series合并成dataframe(如果多个Series的索引对不上,坚持“对齐原则”,如果无法对齐将会出现nan,处理思路方法与Series的空值处理基本一致)方法二:读取csv等类型文件(注意:index_col和names选项)6.1.7DataFrame的属性indexcolumnsvaluesshapesizedescribe()6.1.8DataFrame索引与切片传统索引切片花式索引布尔型索引(注意:只能使用[])6.1.9DataFrame的对位运算与对齐原则对位计算(遵守对齐原则)表的合并单表排序单表统计计算(内容形式与Series基本相同)6.1.10DataFrame处理缺失值删除有空值的行删除有空值的列删除全空的行填充6.1.11DataFrame的常用方法meansumstdsort_valuessort_indexdescribe6.2

时间序列6.2.1生成一个时间序列使用to_datatime方法将列表中的字符串转成时间序列Pandas可以生成各种有规律的时间序列6.2.2时间序列的操作查看某个月的数据查看某些时间区间的数据查看各个月的数据统计6.2.3read_csv的高级应用read_csv的高级选项to_csv的使用6.3Matplotlib6.3matplotlib——安装matplotlib是一个画图的工具库,安装方式如下:6.3.1使用matplotlib画折线图importnumpyasnpimportpandasaspd#引入matplotlib工具包importmatplotlib.pyplotasplt#创建表示x值的ndarray和y值的ndarray,二者为线性关系x=np.array(

[1,3,5,7,9])y=np.array([11,13,15,17,19])#画线段图,x是横坐标,y是纵坐标plt.plot(x,y)#显示画图plt.show()6.3.2图表详细信息plt.title("Pic1")#显示图的名称plt.xlabel("xlabel")#显示x轴名称plt.ylabel("ylabel")#显示y轴名称plt.xlim(0,6)#调整x轴的范围为0-5plt.ylim(2,35)#调整y轴的范围为2-35plt.xticks([0,2,4,6])#x轴只显示列表里的点plt.yticks([10,20,30,35])#y轴只显示列表里的点plt.legend()#将plot中label的内容以图例形式显示出6.3.3其他图——使用matplotlib画柱状图

importnumpyasnpimportpandasaspdimportmatplotlib.pyplotasplt#一共有四组数据作为x轴,分别是Season1Season2Season3Season4season=['Season1','Season2','Season3','Season4']#四个季度的收入分别是10万、15万、20万、10万income=[10,15,20,10]#显示四个季度收入的柱状图,并指定对应颜色是红、黄、绿、蓝plt.bar(season,income,color=['red','yellow','green','blue'])plt.show()6.3.3其他图——使用matplotlib画饼状图

importnumpyasnpimportpandasaspdimportmatplotlib.pyplotasplt#一共有四组数据作为x轴,分别是Season1Season2Season3Season4season=['Season1','Season2','Season3','Season4']#四个季度的收入分别是10万、15万、20万、10万income=[10,15,20,10]#画饼状图,显示四个季度收入占全年收入的占比,并显示比例(显示小数点后1位)plt.pie(income,labels=season,autopct='%.1f%%')plt.show()6.4

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论