使用pandas进行数据处理之 Series篇-Python教程

资源魔 46 0

相干学习保举:python教程

正在python中,明天咱们开端引见一个新的罕用的较量争论对象库,它就是小名鼎鼎的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%没有到。因而可见数据解决的首要性,想要外行业傍边有所倒退,毫不仅仅是学会模子就足够的。

本文应用 mdnice 排版

想理解更多编程学习,敬请存眷php培训栏目!

以上就是应用pandas进行数据解决之 Series篇的具体内容,更多请存眷资源魔其它相干文章!

标签: python教程 python编程 python使用问题 pandas Series

抱歉,评论功能暂时关闭!