高考考试网
当前位置: 首页 高考资讯

pandas实现数据并集(pandas使用pandas进行数据处理)

时间:2023-08-12 作者: 小编 阅读量: 3 栏目名: 高考资讯

上周我们关于Python中科学计算库Numpy的介绍就结束了,今天我们开始介绍一个新的常用的计算工具库,它就是大名鼎鼎的Pandas。安装使用和几乎所有的Python包一样,pandas也可以通过pip进行安装。从打印出来的index的信息当中,我们可以看到这是一个Range类型的索引,它的范围以及步长。说明pandas内部对数值型索引和字符型索引是做了区分的。另外在创建Series的时候,重复的索引也是允许的。

上周我们关于Python中科学计算库Numpy的介绍就结束了,今天我们开始介绍一个新的常用的计算工具库,它就是大名鼎鼎的Pandas。

Pandas的全称是Python Data Analysis Library,是一种基于Numpy的科学计算工具。它最大的特点就是可以像是操作数据库当中的表一样操作结构化的数据,所以它支持许多复杂和高级的操作,可以认为是Numpy的加强版。它可以很方便地从一个csv或者是excel表格当中构建出完整的数据,并支持许多表级别的批量数据计算接口。

安装使用

和几乎所有的Python包一样,pandas也可以通过pip进行安装。如果你装过Anaconda套件的话,那么像是numpy、pandas等库已经自动安装好了,如果没有安装过也没有关系,我们使用一行命令即可完成安装。

pip install pandas

和Numpy一样,我们在使用pandas的时候通常也会给它起一个别名,pandas的别名是pd。所以使用pandas的惯例都是:

import pandas as pd

如果你运行这一行没有报错的话,那么说明你的pandas已经安装好了。一般和pandas经常一起使用的还有另外两个包,其中一个也是科学计算包叫做Scipy,另外一个是对数据进行可视化作图的工具包,叫做Matplotlib。我们也可以使用pip将这两个包一起安装了,在之后的文章当中,用到这两个包的时候,也会简单介绍一下它们的用法。

pip install scipy matplotlib

Series 索引

在pandas当中我们最常用的数据结构有两个,一个是Series另外一个是DataFrame。其中series是一维数据结构,可以简单理解成一维数组或者是一维向量。而DataFrame自然就是二维数据结构了,可以理解成表或者是二维数组。

我们先来看看Series,Series当中存储的数据主要有两个,一个是一组数据构成的数组,另外一个是这组数据的索引或者是标签。我们简单创建一个Series打印出来看一下就明白了。

这里我们随意创建了一个包含四个元素的Series,然后将它打印了出来。可以看到打印的数据一共有两列,第二列是我们刚才创建的时候输入的数据,第一列就是它的索引。由于我们创建的时候没有特意指定索引,所以pandas会自动为我们创建行号索引,我们可以通过Series类型当中的values和index属性查看到Series当中存储的数据和索引:

这里输出的values是一个Numpy的数组,这并不奇怪,因为我们前面说了,pandas是一个基于Numpy开发的科学计算库,Numpy是它的底层。从打印出来的index的信息当中,我们可以看到这是一个Range类型的索引,它的范围以及步长。

索引是Series构建函数当中的一个默认参数,如果我们不填,它默认会为我们生成一个Range索引,其实也就是数据的行号。我们也可以自己指定数据的索引,比如我们在刚才的代码当中加入index这个参数,我们就可以自己指定索引了。

当我们指定了字符类型的索引之后,index返回的结果就不再是RangeIndex而是Index了。说明pandas内部对数值型索引和字符型索引是做了区分的。

有了索引,自然是用来查找元素用的。我们可以直接将索引当做是数组的下标使用,两者的效果是一样的。不仅如此,索引数组也是可以接受的,我们可以直接查询若干个索引的值。

另外在创建Series的时候,重复的索引也是允许的。同样当我们使用索引查询的时候也会得到多个结果。

不仅如此,像是Numpy那样的bool型索引也依然是支持的:

Series计算

Series支持许多类型的计算,我们可以直接使用加减乘除操作对整个Series进行运算:

也可以使用Numpy当中的运算函数来进行一些复杂的数学运算,但是这样计算得到的结果会是一个Numpy的array。

因为Series当中有索引,所以我们也可以使用dict的方式判断索引是否在Series当中:

Series有索引也有值,其实和dict的存储结构是一样的,所以Seires也支持通过一个dict来初始化:

通过这种方式创建出来的顺序就是dict当中key存储的顺序,我们可以在创建的时候指定index,这样就可以控制它的顺序了。

我们在指定index的时候额外传入了一个没有在dict当中出现过的key,由于在dict当中找不到对应的值,Series会将它记成NAN(Not a number)。可以理解成是非法值或者是空值,在我们处理特征或者是训练数据的时候,经常会遇到存在一些条目的数据的某个特征空缺的情况,我们可以通过pandas当中isnull和notnull函数检查空缺的情况。

当然Series当中也有isnull的函数,我们也可以调用。

最后,Series当中的index也是可以修改的, 我们可以直接给它赋上新值:

总结

从核心本质上来说,pandas当中的Series就是在Numpy一维数组上做的一层封装,加上了索引等一些相关的功能。所以我们可以想见DataFrame其实就是一个Series的数组的封装,加上了更多数据处理相关的功能。我们把核心结构把握住了,再来理解整个pandas的功能要比我们一个一个死记这些api有用得多。

pandas是Python数据处理的一大利器,作为一个合格的算法工程师几乎是必会的内容,也是我们使用Python进行机器学习以及深度学习的基础。根据调查资料显示,算法工程师日常的工作有70%的份额投入在了数据处理当中,真正用来实现模型、训练模型的只有30%不到。因此可见数据处理的重要性,想要在行业当中有所发展,绝不仅仅是学会模型就足够的。

文章就到这里,如果喜欢本文,可以的话,请点个关注,给我一点鼓励,也方便获取更多文章。

本文始发于公众号:TechFlow

    推荐阅读
  • 大厨教你酸菜鱼的做法(厨师长分享餐馆酸菜鱼做法)

    准备酸菜200克,去除根部切成小段,野山椒一小把切成圈,生姜切成丝,大蒜切成片放在一起。

  • 微信公众号迁移的目标账户是什么(微信公众号迁移条件是什么)

    在公众号迁移中,有很多的个人号需要办理,针对个人公众号的条件在办理公众号迁移中有哪些特殊的条件和注意事项,小编为您解答。经常有很多的个人号通过公众号迁移转变为企业号。账号迁移所需资料:单位证件、身份证照片、管理员信息、公众号信息;迁移要求:公众号能正常登录、主管理员能扫码。

  • 豆皮为什么热量那么高 豆皮为什么热量那么高呢

    豆皮中脂肪含量为23%,比较高,能够提供的热量就高,每100克豆皮的热量为447大卡。减肥可以吃豆皮吗减肥可以适量吃豆皮的。因为豆皮是常见的豆制品,含有人体所需要的蛋白质大豆,卵磷脂维生素钙,以及铁元素。豆皮的营养价值和功效豆腐皮中含有丰富的优质蛋白,大量的卵磷脂,每100g豆皮中蛋白质含量51.6g、脂肪23g、碳水化合物12.5g、钙239mg、铁11.7mg,并含有多种矿物质,可防止血管硬化,预防心血管疾病,起到保护心脏的作用。

  • mix是什么意思(mix是什么意思是什么)

    mix是什么意思mix是一个英语单词,名词、动词,作名词时意思是“混合;良莠不齐;混合物;各色人混杂的一群;混乱;成分比例;配料;混录,混音;乐曲组合,连奏;叠化图像”,作动词时意思是“(使)混和;配制;参与;相容,平安相处;交往,交际;混合录音;混成;并置,使相结合;(非正式)打起来”。mixproportion配合比;混合比;用料配合比。mixin混入;混合类型;掺合模式。

  • 倩狐怎么吃减肥最有效(晚上肚子总是饿)

    边吃边骂自己,第二天节食更厉害。一般是不建议吃宵夜的。而100大卡就相当于:1根中等长度的香蕉80个桑葚4个小桃子1个小苹果1小串葡萄1个小苹果和1小盒脱脂酸奶1个水煮蛋和1小块全麦吐司1勺花生酱1片全麦面包2:宵夜最晚不要超过睡前60分钟。只是要尽量把宵夜控制在睡前60分钟吃完,以免影响入睡~

  • 打耳洞后半个月可以摘吗(打耳洞晚上睡觉要摘吗)

    刚打完耳洞,晚上睡觉时,不仅是不要摘,而是不可以摘。避免脑袋压迫耳洞刚打完耳洞后,尽量不要侧身睡,因为这样脑袋容易压迫耳洞,引起耳朵的不适。纯银耳钉含有银离子,而银离子有着很强的杀菌作用,能够解毒、加快伤口的愈合、防止伤口感染,因此很适合第一次换耳钉用。打完耳洞后的注意事项1.打完耳洞后,想要耳洞恢复的快,可以每天旋转几次耳钉,避免耳钉和耳洞黏在一起,注意旋转时,一定要保持手的干净哦。

  • 3月开什么花(哪些花三月份开花)

    3月开什么花梅花:这种花的花瓣一般有五片,拥有白、红、粉红等多种色彩,寓意着坚强、文雅的含义,花期大约在2~3个月之间,虽说在寒冬先叶开放,不过在阳春三月,依旧可看出它的身影。桃花,属蔷薇科植物。具有很高的观赏价值,其花语及代表意义为:爱情的俘虏。每年3月份,各地会以桃花为媒,举办桃花节盛会。

  • 玳瑁和海龟的区别(海龟和玳瑁有哪些不同)

    爬行纲、龟鳖目、海龟科、玳瑁属、玳瑁种。头及四肢棕褐色。头顶有两对前额鳞,吻部侧扁,上颚前端钩曲呈鹰嘴状,前额鳞2对,背甲盾片呈覆瓦状排列,背面的角质板覆瓦状排列,表面光滑,具褐色和淡黄色相间的花纹。以鱼类、头足纲、甲壳纲动物及海藻为食。它的活动能力较强,游泳速度较快。卵球形,白色,壳软有弹性。初孵出的幼龟背甲未完全坚硬,但已有覆瓦状排列,龟甲长约43-48毫米。幼龟颈部可自由伸缩,但不能前后左右转动。

  • 隋朝为何只传两代(隋朝统治仅维持38年)

    我们熟知的隋朝皇帝,就是隋文帝和隋炀帝。开创隋朝后,他在多个方面进行了改革,那段时期被称为“开皇之治”。文帝病死后,隋炀帝杨广继位。有雄心壮志,却操之过急,他的改革做法也直接导致了隋朝的灭亡。长期的战争对百姓的生存状况无疑是火上浇油,农民起义开始爆发。这些战争毫无疑问是导致隋亡的直接推手。出身于关陇贵族的隋朝皇帝们,最终亡于关陇贵族。隋炀帝通过战争打压关陇集团的手段,被证明是失败的。

  • 九龙虫一天吃几个最佳(九龙虫一天吃多少)

    跟着小编一起来看一看吧!九龙虫一天吃几个最佳视个人情况而定。九龙虫别名洋虫,是温带、热带地区蛀食仓库粮食的害虫之一。九龙虫富含蛋白质和各种氨基酸等物质,具有较高的营养价值,可药用和食用。九龙虫可以活吃,也可以烤干研末每日空心酒中服,还可以泡酒饮用或与蜂蜜调和兑水食用。