第11章 Python数据分析.ppt
《第11章 Python数据分析.ppt》由会员分享,可在线阅读,更多相关《第11章 Python数据分析.ppt(39页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、课程主讲人:第11章 Python数据分析第第11章章 Python数据分析数据分析主讲主讲 夏敏捷夏敏捷计算机学院副教授计算机学院副教授Python Data Analysis Library (Pandas) Python Data Analysis Library (Pandas)是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas提供了一些标准的数据模型和大量能使我们快速便捷地处理数据的函数和方法,使Python成为大型数据集强大而高效的数据分析工具。本章就来学习Pandas操作方法。Pandas提供如下数据类型:(1)Series系列(Series)是能够
2、保存任何类型的数据(整数,字符串,浮点数,Python对象等)的一维标记数组。 (2)DataFrame数据框(DataFrame)是二维的表格型数据结构。很多功能与R中的data.frame类似。可以将DataFrame理解为Series的容器。(3)Panel面板(Panel)是三维的数组,可以理解为DataFrame的容器。11.1 Python Data Analysis Library(Pandas)2使用Pandas首先需要安装,在命令行下使用pip3 install pandas即可。Pandas 约定俗成的导入方法如下:import pandas as pdfrom panda
3、s import Series,DataFrame如果能导入成功,说明安装成功。11.1 Python Data Analysis Library(Pandas)11.1.1 Series系列1 1创建创建PandasPandas系列系列Series 就如同列表一样是一系列数据,每个数据对应一个索引值。可以看做一个定长的有序字典。s = Series(中国,美国,日本) #注意这里是默认索引0,1,2s = Series(中国,美国,日本, index = a,b,c) #自定义索引s = Series(data = 中国,美国,日本, index = a,b,c)Pandas系列可以使用以下
4、构造函数创建:pandas.Series( data, index, dtype, copy)11.1.1 Series系列2 2访问访问PandasPandas系列系列(1)使用位置访问Pandas系列中数据s = pd.Series(1,2,3,4,5,index = a,b,c,d,e)print (s0 ) #访问第一个元素1print (s:3 ) #检索系列中的前三个元素1,2,3print (s-3: ) #检索系列中的最后三个元素3,4,5(2)使用索引访问Pandas系列中数据系列Series就像一个固定大小的字典,可以通过索引标签获取和设置值。s = pd.Series(1
5、,2,3,4,5,index = a,b,c,d,e)print(sb) #结果是2print (sa,c,d) #获取索引a,c,d对应值11.1.2 DataFrame数据框(DataFrame)是二维数据结构,即数据以行和列的表格方式排列。基本上可以把 DataFrame 看成是共享同一个index索引的Series的集合。构造函数创建pandas.DataFrame( data, index, columns, dtype, copy)11.1.2 DataFrame1 1从从单个列表创建列表创建DataFrameDataFrameimport pandas as pddata = 1
6、0,20,30,40,50df = pd.DataFrame(data)print (df)2 2从从多维列表创建列表创建DataFrameDataFrameimport pandas as pddata = Alex,10,Bob,12,Clarke,13df = pd.DataFrame(data,columns=Name,Age)print (df)11.1.2 DataFrame(3)从键值为ndarrays/Lists的字典来创建import pandas as pddata = Name:Tom, Jack, Steve, Ricky,Age:28,34,29,42df = pd.
7、DataFrame(data)print (df)(4)从系列Series的字典来创建import pandas as pdd = one : pd.Series(1, 2, 3, index=a, b, c), two : pd.Series(1, 2, 3, 4, index=a, b, c, d)df = pd.DataFrame(d)print (df)DataFrame的基本功能DataFrame的基本功能 import pandas as pd df = pd.read_csv(marks2.csv) # marks2.csv是成绩信息 df.T #DataFrame的转置。实现行
8、和列将交换DataFrame的基本功能head()和tail()要查看DataFrame对象的部分数据,可使用head()和tail()方法。head()返回前n行(默认数量为5)。tail()返回最后n行(默认数量为5)。但可以传递自定义的行数。DataFrame的行列操作(1)选择列通过列名从数据框(DataFrame)中选择一列import pandas as pdd = one : pd.Series(11, 12, 13, index=a, b, c), two : pd.Series(1, 2, 3, 4, index=a, b, c, d)df = pd.DataFrame(d)
9、print (dfone) #选择one列DataFrame的行列操作(2)添加列import pandas as pdd = one : pd.Series(11, 12, 13, index=a, b, c), two : pd.Series(1, 2, 3, 4, index=a, b, c, d)df = pd.DataFrame(d)print (Adding a new column by passing as Series:)dfthree=pd.Series(10,20,30,index=a,b,c)print (Adding a new column using the ex
10、isting columns in DataFrame:)dffour=dfone+dfthreeDataFrame的行列操作(3)删除列import pandas as pdd = one : pd.Series(1, 2, 3, index=a, b, c), two : pd.Series(1, 2, 3, 4, index=a, b, c, d), three : pd.Series(10,20,30, index=a,b,c)df = pd.DataFrame(d)# 使用DEL删除功能del dfone #删除one列#使用POP删除功能df.pop(two) #删除two列pri
11、nt (df)DataFrame的行列操作(4)行选择,添加和删除可以通过将行标签传递给loc()函数来选择行。import pandas as pdd = one : pd.Series(1, 2, 3, index=a, b, c), two : pd.Series(1, 2, 3, 4, index=a, b, c, d)df = pd.DataFrame(d)print( df.locb )也可以通过将行号传递给iloc()函数来选择行。print (df.iloc2 ) #注意行号是零开始,所以实际是第3行也可以进行行切片,使用:运算符选择多行。print (df2:4 ) #选择第
12、3行到第4行DataFrame的行列操作(5)添加行#使用append()函数将新行添加到DataFrame中。import import pandas as as pddf = pd.DataFrame(1, 2, 3, 4, columns = a a,bb)df2 = pd.DataFrame(5, 6, 7, 8, columns = a a,bb)df = df.append(df2)print print (df)DataFrame的行列操作(6)删除行使用索引标签从DataFrame中删除或删除行。如果标签重复,则会删除多行。import pandas as pddf = pd.
13、DataFrame(1, 2, 3, 4, columns = a,b)df2 = pd.DataFrame(5, 6, 7, 8, columns = a,b)df = df.append(df2)print (df)print (Drop rows with label 0)df = df.drop(0)print (df)11.2 Pandas统计功能DataFrame有很多函数用来计算描述性统计信息和其他相关操作。1 1描述性统计描述性统计描述性统计又叫统计分析,一般统计某个变量的平均值、标准偏差、最小值、最大值、以及1/4中位数,1/2中位数,3/4中位数。表11-4列出Pandas
14、中主要的描述性统计信息的函数。11.2 Pandas统计功能2 2汇总汇总DataFrameDataFrame列数据列数据describe()函数是用来计算有关DataFrame列的统计信息的摘要。包括数量count,平均值mean,标准偏差std,最小值min,最大值max,以及1/4中位数,1/2中位数,3/4中位数。11.2.2 分组统计Pandas有多种方式来分组(GroupBy),如:obj.groupby(key)obj.groupby(key1,key2)obj.groupby(key,axis=1)例如:import pandas as pddf= pd.DataFrame(
15、199901, 张海, 男 ,100, 100, 25, 72, 199902, 赵大强, 男, 95, 54, 44, 88, 199903, 李梅, 女, 54, 76, 13, 91, 199904, 吉建军, 男, 89, 78, 26, 100 , columns = xuehao, name, sex, physics, python, math, english)grouped =df.groupby(sex) #按性别分组print (grouped.get_group(男)11.3 Pandas合并合并/连接和排序连接和排序Pandas具有功能全面的高性能内存中连接操作,与S
16、QL关系数据库非常相似。Pandas提供了一个merge()函数,实现DataFrame对象之间所有标准数据库连接操作。merge(left, right, how=inner, on=None, left_on=None, right_on=None,left_index=False, right_index=False, sort=True)合并合并/连接连接import import pandas as as pdleft = pd.DataFrame( idid:1,2,3,4,5, NameName: AlexAlex, AmyAmy, AllenAllen, AliceAlice,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第11章 Python数据分析 11 Python 数据 分析
限制150内