python机器学习–数据分析的基本武器–Numpy基础知识详解

思维导图:

 

目录:

一、Numpy与数组

二、列表与Numpy数组的区别

三、创建数组的几种方式


1.Numpy与数组

        @1:演示操作

        #运行结果
[12, 34, 56, 33]
[12 34 56 33]

        @2:接下来通过列表索引和数组索引来访问列表和数组中的元素,代码如下:

        #运行结果

56
33
[12, 34, 56]
[12 34 56]

        分析:由上面的运行结果我们不难观察到数组与列表的最大区别在于(数组里面是由空格符隔开,而列表里面是由逗 隔开)

2.列表与Numpy数组的区别

        @1:数组进行数学运算相对列表比较方便,而由相同数字组成的列表和数组,计算出来的结果是不同的

        @2:数组可以支持多维的数据,而列表只能储存一维的数据

        @3:列表是由逗 隔开,而数组是由空格符隔开

        @1的讲解,下面我们来进行操作演示,代码如下:

        #运行结果

c的结果为: [2, 3, 4, 5, 2, 3, 4, 5]
d的结果为: [ 4  6  8 10]

        分析:通过上面的操作可以清晰的看出,2倍的数组和2倍列表,数组是运算原理是相应的位置上扩大两倍,而列表运算原理是将原来的列表复制下来再组合成列表。

        @2的讲解操作演示,代码如下:

        #运行结果:

列表: [[1, 2], [3, 4], [5, 6]]
二维数组: [[1 2]
          [3 4]
          [5 6]]

        分析:可以看到列表虽然包含着三个小列表,但其还是一个一维的结构,而创建的二维数组则是一个三行两列的二维结构内容,这个也是之后学习pandas库的核心内容了,因为数据数据处理中经常用到二维数组,也即二维表格结构。

3.创建数组的几种方式

        @1:操作演示

        #运行结果:

一维数组: [ 1 23  3  4  5]
二维数组: [[1 2]
          [3 4]
          [5 6]]

        @2:除此之外,还有一些常见的创建数组的方式,这里以一维数组为例,我们还可以采用np.arange()函数来产生一维数组,其中括 里可以选择1个或2个或3个参数,代码如下:

         #运行结果:

x: [0 1 2 3 4 5 6 7 8 9]
y: [ 6  7  8  9 10 11 12 13 14]
z: [5.  5.5 6.  6.5 7.  7.5 8.  8.5 9.  9.5]

        @3:我们还可以通过np.random模块来创建随机一维数组,比如可以通过np.random.randn(5)来创建一个服从正太分布(均值为0,方差为1的分布)的5个随机数一维数组,代码如下:

       #运行结果:

a: [ 0.75296369 -0.26186535  0.82455397 -0.26515191  0.0790009 ]

        @4:如果把np.random.randn(5)换成np.random.rand(5),那生成的就是0-1之间的5个随机数,代码如下:

        #运行结果:

a: [0.70213035 0.97106942 0.26096476 0.13735899 0.06844942]

        @5:至于二维数组的创建与学习,可以利用一维数组中的np.arange()函数和reshape方法产生一个二维数组,比如将0到16个数转换成4行4列的二维数组,代码如下:

        #运行结果:

a: [[ 0  1  2  3]
   [ 4  5  6  7]
   [ 8  9 10 11]
   [12 13 14 15]]

        @6:这里再简单提一种随机二维数组的创建,代码如下。其中np.random.randint()函数用来创建随机整数,括 里第一个元素0表示起始数,第二个元素10表示终止数,第三个元素(4, 4)则表示生成一个4行4列的二维数组,代码如下:

        #运行结果:

a: [[4 0 7 4]
   [6 1 3 0]
   [7 1 9 7]
   [2 4 6 2]]

文章知识点与官方知识档案匹配,可进一步学习相关知识OpenCV技能树首页概览11263 人正在系统学习中

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年6月15日
下一篇 2022年6月15日

相关推荐