pandas教程(pandas怎么使用?)

作者:百科火  更新 :2022-03-10 18:40:07   科技百科  

最佳答案1、简介:pandas是python中基于numpy和matplotlib的第三方数据分析库。2、pandas数据结构:series和二维的dataframe。3、 数据读写:支持大部分的主流文件格式进行数据读写。4、数据访问:兼具numpy数组和字典的结构特性。5、数据处理:最强大的功能。

pandas教程(pandas怎么使用?)

pandas如何使用它?不知道朋友看看今天的小边pandas教程分享吧!

1、pandas简介:

pandas是python data analysis组合缩写,是的python中基于numpy和matplotlib的第三方数据分析库,与后两者共同构成了python数据分析的基础工具包,享有数分三剑客之名。

2、pandas数据结构:

pandas有两种核心数据结构,即一维结构series和二维的dataframe,两者可分别视为numpy相应的标签信息是在一维数组和二维数组的基础上添加的。因此,可以从两个角度理解series和dataframe:

series和dataframe它们是一维和二维数组,因为它们是数组,所以numpy这两种数据结构,包括数据创建、切片访问、通括数据创建、切片访问、通信函数、广播机制等

series它是一个带有标签的一维数组,因此也可以被视为类字典结构:标签是key,取值是value;而dataframe可视为嵌套字典结构,其中列名为key,每一列的series是value。所以从这个角度来看,pandas一种灵活的数据创建方法是通过字典或嵌套字典,自然衍生出适series和dataframe类似字典访问的接口,即通过loc索引访问。

3、 数据读写:

pandas数据读写支持大部分主流文件格式,常用格式和接口为:

主要包括文本文件csv和txt两种等,相应的界面是read_csv()和to_csv()分别用于读写数据

Excel文件,包括xls和xlsx支持两种格式,调用底层xlwt和xlrd进行excel相应的接口是文件操作read_excel()和to_excel()

SQL文件支持大多数主流关系数据库,如MySQL,需要相应的数据库模块支持,相应的接口是read_sql()和to_sql()

此外,pandas还支持html、json读写操作等文件格式。

4、数据访问:

series和dataframe兼具numpy数组和字典的结构特征,因此数据访问从这两个方面开始。同时,也支持bool数据访问和筛选索引。

[ ],这是一个非常便捷的访问方式,不过需区分series和dataframe理解两种数据结构:

series:可以用标签或数字索引访问单个元素,也可以用相应的切片访问多个值,因为只有一维信息,自然没有悬念

dataframe:如果您不能访问单个元素,您只能返回一列、多列或多行:单值或多值(由多个列组成的列表)按列查询。当单值访问中没有列名歧义时,您也可以直接使用属性符号" . "访问。以切片的形式进行查询,区分数字切片和标签切片:输入数字索引切片时,类似于普通列表切片;输入标签切片时,执行范围查询(即标签列中不存在切片的第一和最终值),包括两端标签结果,不匹配线返回空,但要求标签切片类型与索引类型一致。例如,当标签列类型(可通过时df.index.dtype查看)为时间类型时,如果使用不能隐式转换为时间的字符串作为索引切片,则会引起报错。

5、数据处理:

pandas当然,最强大的功能是数据处理和分析,可以独立完成数据分析前的大部分数据预处理需求。简单地说,它可以分为以下几个方面:

数据清洗

数据处理中的清洗工作主要包括空值、重复值和异常值的处理:

空值

判断空值,isna或isnull,两者的等价用于判断一个series或dataframe各元素值是否为空bool结果。注意空值的定义:即None或numpy.nan空字符串、空列表等不属于空值;类似地,notna和notnull判断是否非空

填充空值,fillna,按照一定的策略填充空值,如常数填充、前/后填充等,也可以通过inplace确定参数是否本地变更

删除空值,dropna,可通过删除存在空值的整行或整列axis还包括设置inplace参数

重复值

检测重复值,duplicated,检查各行是否重复,返回一行索引bool结果,可以通过keep第一行/最后一行/无保留的参数设置keep=first这意味着当有多行重复时,第一行被认为是合法的,可以保留

删除重复值,drop_duplicates,按行检测和删除重复记录,也可以通过keep参数设置保留项。由于该方法默认为检测,如果需要按列删除,可以在执行该方法之前转移

异常值,判断异常值的标准依赖于具体的分析数据,所以这里只有两种可选的方法来处理异常值

删除,drop,在特定轴线上删除一个或多个接受参数的记录axis参数设置是按行删除还是按列删除

替换,replace,功能非常强大,对series或dataframe每个元素都可以按条件更换,正则表达功能也可以打开

数值计算

由于pandas是在numpy因此,numpy常用数值计算操作pandas中也适用:

通函数ufunc,就像操作标量一样series或dataframe所有元素都执行相同的操作,这与numpy的特性是一致的,例如前文提到的replace函数本质上可以算是通函数。以下是数据表中逐元素求平方。

广播机制,即当维度或形状不匹配时,在一定条件下计算。pandas它是一个带有标签的数组,所以它会在广播过程中自动匹配标签,而不是类似的numpy那种纯粹按顺序广播。例如,在下面的例子中执行一个dataframe和series虽然维度不同,尺寸不同,标签顺序不一致,但仍可根据标签匹配得到预期结果

字符串向量化,即数据类型为字符串格式的一列向量化字符串操作,本质上是调用series.str属性系列接口,完成相应的字符串操作。特别强大的是,除了常用的字符串操作方法外,str属性接口中还集成了正则表达式的大部分功能,这使得pandas在处理字符串列时,它既高效又强大。例如,下面的代码可以用来统计每个句子中单词的数量

时间类型向量化操作,如字符串,在pandas另一个得到"优待"数据类型是时间类型,如字符串列str属性调用字符串接口相同,可以使用时间类型列dt属性调用相应的接口,在处理时间类型时会非常有效。

数据转换

pandas它还提供了更强大的数据转换方法

map,适用于series对象,功能和python中的普通map函数相似,即对给定序列中的每个值进行相同的映射操作,区别在于series中的map接口的映射可以是函数或字典

apply,既适用于series对象也适用dataframe对象,但两者的粒度不同:apply应用于series逐元素执行函数操作;apply应用于dataframe通过axis参数设置对行或对列,默认为行),只接收函数作为参数

applymap,仅适用于dataframe对象,是对的dataframe从这个角度来看,每个元素执行函数操作replace类似,applymap可看作是dataframe对象的通函数。

合并与拼接

pandas另一个重量级数据处理功能是多个dataframe合并拼接对应SQL两个非常重要的操作:union和join。pandas这两个功能的完成主要取决于以下函数:

concat,与numpy中的concatenate类似,但功能更强大,可以通过一个axis参数设置为横向或拼接,要求非拼接轴向标签是唯一的(例如,当沿线拼接时,要求每一个df内部列是唯一的,但有两个df间可重复,毕竟有同列才有拼接的实际意义)

merge,完全类似于SQL中的join语法只支持横向拼接,通过设置连接字段连接同一记录的不同列信息inner、left、right和outer4但只能实现连接方式SQL中等等值连接

join,语法和功能merge一致,不同的是merge既可以用pandas也可以使用接口调用dataframe调用对象接口join则只适用于dataframe对象接口

append,concat执行axis=0简化接口,类似列表append函数一样

实际上,concat通过设置axis=1也可实现与merge两者的区别在于:merge允许重复连接字段,类似于一对多或多对一连接,此时将产生笛卡尔积累结果;concat不允许重复,只能一对一拼接。

以上是小编今天的分享。我希望它能帮助你。

- END -

女字加一笔是什么字?

女字加一笔是什么字?

01毋女字加一笔是毋。形象兼会意字,女之分化字。从女,正中间加一横笔为分化标记,女亦声。女、母、毋均一字之分化。东...

野羊和麂子的区别(菲氏麂仅有标本采集报导)

野羊和麂子的区别(菲氏麂仅有标本采集报导)

野羊和麂子的区别,科属不同:野羊为偶蹄目、牛科、羊亚科、山羊属的哺乳动物。麂子是哺乳纲、偶蹄目、鹿科动物。外形...

repo(“repo”一词在饭圈比较常见,可以是观看心得、推荐宣传)

repo(“repo”一词在饭圈比较常见,可以是观看心得、推荐宣传)

“repo”是英文单词“report”的简写,指代的是对某事或者某物的心得感想或总结。“repo”一般是指参加现场节目录制...

木薯是什么东西(大戟科木薯属植物,被称为淀粉之王)

木薯是什么东西(大戟科木薯属植物,被称为淀粉之王)

木薯是什么东西,木薯别名树葛,是大戟科木薯属植物,被称为淀粉之王。耐旱抗贫瘠,广泛种植于非洲、美洲和亚洲等100余个...

2公里是多少米(2公里=2千米。公里是指一种常用的长度计量单位)

2公里是多少米(2公里=2千米。公里是指一种常用的长度计量单位)

2公里=2千米。公里是指一种常用的长度计量单位,是千米的俗称,缩写为km,1公里(千米)=1000米,通常它用于衡量两地之间的...

蚕是不是昆虫

蚕是不是昆虫

蚕是昆虫,因为昆虫的成虫都为3段节肢动物,并且有3对足,而蚕虽然是毛虫状,并且有八对足,但是蚕属于完全变态昆虫,成虫为蛾...

河南古时候叫什么

河南古时候叫什么

河南古代叫中州。古时候,九州之中,中州是九州中最大的,也是处于九州中间的地理位置(洛阳,是周公立杆测影,建城的地方)。河...

1厘米等于多少毫米mm

1厘米等于多少毫米mm

厘米是一个长度计量单位,一厘米等于十毫米。厘米是常用的长度单位,一米的一百分之一为一厘米。毫米,英文缩写mm(或毫米...

银渐层多少钱一只(银渐层猫一般价格在3000)

银渐层多少钱一只(银渐层猫一般价格在3000)

银渐层猫一般价格在3000-2万不等。银渐层英短属于英国短毛猫的一种,它因为颜色更具有渐变的色彩而得名,在猫类中银渐...

一个嘉年华换算成人民币是多少钱(嘉年华30000抖币等于多少人民币)

一个嘉年华换算成人民币是多少钱(嘉年华30000抖币等于多少人民币)

抖音嘉年华需要30000抖币购买,换算成人民币也需要3000元购买,个人主播和平台的收入比例按照30%来算,那么主播收到一个...

查看更多知识百科