• numpy 库


    【1】为什么要用numpy

              低效的python  for  循环

              eg:  求100万个数的倒数

     

     %timeit: python 中 统计时间的魔术方法(多次运行取平均值)

    实现相同的运算,numpy  的运行速度是python 的25 倍,产生了质的飞跃

    【2】numpy  为什么如此高效?

             numpy   是由C 语言编写的,对代码进行整体编译,速度更快

             numpy 数组内的数据类型必须是统一的,而python  列表支持任意类型的数据填充

              C语言可以实现多线程并行,python  语言执行时有线程锁

       说明:

            多线程,是指从软件或硬件上实现多个线程并发执行的技术,有硬件的支持,计算机能够在同一时间执行多个线程,进而提升整体处理性能,

    【3】 什么时候使用numpy?

             在数据处理的时候,实现一些向量化、矩阵化操作的时候,要优先考虑用numpy

            eg: 两个向量的点乘

                    矩阵乘法

    【4】numpy 数组的创建

             4.1从列表开始创建

             

                   4.2  设置数组的数据类型

                          

           

    【5】 从头创建数组

              5.1   创建长度为5 的数组,值都是0 

                 

               5.2  创建一个2*4 的浮点型数组,值都为1

                      

                   5.3   创建一个3*5 的数组,值都为8.8 

                            

                  5.4 创建一个3*3 的单位矩阵

                        

                      5.5 创建一个线性序列数组,从1开始,到15结束 ,步长为2

                       

                  5.6   创建一个4个元素的数组,这四个数均匀的分配到0~1

                        

                     5.7   创建一个10 个元素的数组,形成1~10^9 的等比例数列

                            

                       5.8   创建一个3*3 的,在0~1 之间均匀分布的随机数构成的数组

                           

                        5.9    创建一个3*3 ,均值为0 ,标准差为1的正态分布随机 数构成的数组

                           

                           5.10    创建一个3*3 的,在【0,10 】之间随机整数构成的数组

                                     

                               5.11  随机重排列

                                  

                                  5.12   随机采样

                                    按指定形状采样

                                  

    【6】数组的性质

              6.1 数组的属性

                     

                 6.2   数组的形状shape

                            

                 6.3   数组的维度  ndim 

                      

                   6.4  数组的大小 size

                      

                 6.5    数组数据的类型 dtype

                      

    【7】 数组的索引

             7.1   一维数组的索引

                

                 7.2   多维数组的索引  --- 以二维为例

                

       注意: numpy 数组的数据类型是固定的,向一个整型数组插入一个浮点值,浮点值会向下进行取暖

         

    【8】 数组的切片

          8.1  一维数组  和列表一样

                 

                 8.2  多维数组   (以二维为例)

                  

                    

                      8.3 获取数组的行和列

                      

                   8.4    切片获取的是视图,而不是副本

                  

            说明: 视图元素发生修改,则原数组亦会发生相应的修改

               

                             

                       8.5     修改切片的安全方式 :copy 

                            

      【9】 数组的变形  reshape()

                

                  注意:reshape  返回的是视图,而非副本

                        

                         9.1  一维向量转行向量

                              

  • 相关阅读:
    vue中常用的属性标签
    Vue 基本简介
    ES6 Map 和 WeakMap
    ES6 set/weakset
    ES6 generator生成器函数 async
    ES6 promise对象
    信息论-熵-随机变量-泛函
    机器学习一
    RS-232接口
    图的存储结构
  • 原文地址:https://www.cnblogs.com/huateng/p/15169288.html
Copyright © 2020-2023  润新知