Python的数据科学实践 Numpy

 

  大家好,基于Python的数据科学实践课程又到来了,大家尽情学习吧。本期内容主要由程茜与政委联合推出。

  下面我们介绍Python中的Numpy模块。Numpy多用于科学计算中存储和处理大型矩阵,其本身并没有提供很多高级的数据分析功能。但是Numpy却成为了数据科学实践中最常用的模块,其原因是它是众多数据科学模块所需要的基础模块。理解Numpy能够帮助大家去理解很多其他的所需要学习的模块。

  Numpy提供了两种基本对象,ndarray和ufunc。ndarray为数组,其特点是只能存储单一数据类型,ufunc是对数组进行处理的函数。

  Numpy中,所有数组的数据类型必须一致。Numpy中提供了逻辑、整数、浮点数等多种数据类型,并且每种数据类型的名称均对应其转换函数,可以使用“np.数据类型”的方式直接转换对应类型的数据对象,例如:

  数组的数据类型也可以有用户自己定义,比如要创建一个火锅团购的信息清单,它包含的字段有团购名称、团购人数与团购价。它可以事先使用dtype函数字来定义这些字段的类型:

  有了上面Numpy数组的基础,相信大家会很容易理解利用Numpy读入数据的方法,下面我们就尝试着利用numpy读入火锅的数据。

  在数据分析中,难免会出现“脏”数据的情况,重复数据就是“脏”数据的情况之一。海量数据面前总不能一个一个去删除。在Numpy中,可以通过unique函数对数据进行去重。比如如果想知道店名中有没有重复值,如何来处理呢?

  Numpy中,一维数组索引与上文提到过的list索引方法一致。比如,当我们想找出第3个团购活动的店铺名称时,可以进行如下操作:

  多维数组每一维度都有一个索引,各维度索引之间用逗号隔开,比如,如何随时调出来每个团购活动的人数?这就可以利用多维数组进行索引。

  在这里,首先建立一个关于团购活动ID,团购名、购买人数的三维数组,然后通过转置将数据变形成数据分析中常用的形式,最后通过行列数进行基本索引,调出第一条数据。

  当然,除了上述的基本索引,我们还可以通过布尔值进行索引。比如,一肖中码的意思是什么想找出团购人数为50人的团购活动,就可以通过布尔值进行索引。

  在Numpy中,有许多可以用于统计分析的函数,常见的有sum、mean、std、var、min、max等等。以下我们就以团购价为例来对团购价进行统计分析。

  利用Numpy可以很轻松的计算出来在本数据集中,西安火锅团购价格均价在122元左右,方差24214.51,波动很大,说明价格参差不齐。最贵的团购价格竟然达到了3999元,真是贫穷限制了我们的想象!

  通过上面对于Numpy模块的讲述,可以发现Numpy在用于数据分析时并不是那么顺手,其主要原因是它的数据结构的设置不符合大家采集得到的数据的逻辑,必须要每个元素都是同样的数据类型。Python未解决这个问题,Pandas模块应运而生,下一章将会主要介绍。

东方红心水论坛| 香港马会现场摇奖| 一点红高手坛最顶尖| 正版资料第一二三份2019年| 今晚白小姐开马图马报| 神算子高手联盟论坛| 上期开特马下期必中两波| 香港挂牌号出肖规律| 直播六合彩开奖结果| 香港王中王高手论坛|