pandas series添加数据,pandas中series

  pandas series添加数据,pandas中series

  相关学习推荐:python教程

  在python中,今天我们开始介绍一个新的常用计算工具库,这就是著名的Pandas.

  Pandas,全称Python Data Analysis Library,是基于Numpy.的一款科学计算工具它最大的特点就是可以像操作数据库中的表一样操作操作结构化的数据,所以支持很多复杂高级的操作,可以算是Numpy的增强版。它可以轻松地从csv或excel表中构造完整的数据,并支持许多表级批量数据计算接口。

  00-1010像几乎所有的Python包一样,pandas也可以通过pip安装。如果您已经安装了Anaconda suite,那么numpy和pandas等库已经自动安装。没装过也没关系。我们可以用一行命令来完成安装。

  安装熊猫的副本代码和Numpy一样。当我们使用熊猫时,我们通常给它起一个别名。熊猫的别名是pd。所以使用熊猫的惯例是:

  如果您运行这行代码没有错误,那么您的panda已经安装好了。一般还有另外两个经常和熊猫一起使用的包,其中一个也是科学计算包,叫做Scipy,另一个是可视化和绘制数据的工具包,叫做Matplotlib。我们也可以使用pip将这两个包安装在一起。在下面的文章中,当使用这两个包时,我们将简单介绍它们的用法。

  ;" class="brush:php;toolbar:false;">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篇的详细内容,更多请关注盛行IT软件开发工作室其它相关文章!

  

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

标签:

相关文章阅读

  • pycharm添加pandas,pycharm如何导入pandas模块
  • pycharm添加pandas,pycharm如何导入pandas模块,在Pycharm中安装Pandas库方法(简单易懂)
  • pandas组内排序,pandas对数据进行排序
  • pandas组内排序,pandas对数据进行排序,Pandas分组与排序的实现
  • pandas去重操作,pandas 去重计数
  • pandas去重操作,pandas 去重计数,pandas中的数据去重处理的实现方法
  • pandas中groupby函数的参数,pandas中groupby函数的参数,Pandas之groupby( )用法笔记小结
  • pandas中groupby函数的参数,pandas.groupby
  • pandas 过滤数据,pandas 过滤特定的值
  • pandas 过滤数据,pandas 过滤特定的值,Pandas--过滤缺失数据--pd.dropna()函数的用法说明
  • pandas reshape,
  • pandas reshape,,Pandas中resample方法详解
  • ,,pandas应用实例之pivot函数详解
  • ,,Pandas常用累计、同比、环比等统计方法实践过程
  • ,,Pandas之ReIndex重新索引的实现
  • 留言与评论(共有 条评论)
       
    验证码: