Numpy是高性能科学计算和数据分析的基础包。它也是pandas等其他数据分析的工具的基础,基本所有数据分析的包都用过它。NumPy为Python带来了真正的多维数组功能,并且提供了丰富的函数库处理这些数组。它将常用的数学函数都支持向量化运算,使得这些数学函数能够直接对数组进行操作,将本来需要在Python级别进行的循环,放到C语言的运算中,明显地提高了程序的运算速度。
>: pip install numpy
import numpy as np # 约定俗成的起别名:np
这是官方认证的导入方式,可能会有人说为什么不用from numpy import *,是因为在numpy当中有一些方法与Python中自带的一些方法,例如max、min等冲突,为了避免这些麻烦大家就约定俗成的都使用这种方法。
Numpy的核心特征就是N-维数组对——ndarray.
有一个购物车, 购物车中有商品的数量和对应的价格, 求总的价格 shop_car = [2,4,6,1] shop_price = [10,20,1,30]
pycharm中实现:
shop_car = [2,4,6,1] shop_price = [10,20,1,30] prices = 0 index = 0 for i in shop_car: price = shop_price[index] prices += i * price index +=1 print(prices) # 136
numpy中实现:

通过ndarray这个多维数组对象可以让这些批量计算变得更加简单,当然这只它其中一种优势,接下来就通过具体的操作来发现。

注意:
1.数组对象内的元素类型必须相同
2.数组大小不可修改
| 属性 | 描述 | |
|---|---|---|
| T | 数组的转置(对高维数组而言) | |
| dtype | 数组元素的数据类型 | |
| size | 数组元素的个数 | |
| ndim | 数组的维数 | |
| shape | 数组的维度大小(以元组形式) |

| 类型 | 描述 | |
|---|---|---|
| 布尔型 | bool_ | |
| 整型 | int_ int8 int16 int32 int 64 | |
| 无符号整型 | uint8 uint16 uint32 uint64 | |
| 浮点型 | float_ float16 float32 float64 | |
| 复数型 | complex_ complex64 complex128 |

注意: astype()方法可以修改数组的数据类型
| 方法 | 描述 | |
|---|---|---|
| array() | 将列表转换为数组,可选择显式指定dtype | |
| arange() | range的numpy版,支持浮点数 | |
| linspace() | 类似arange(),第三个参数为数组长度 | |
| zeros() | 根据指定形状和dtype创建全0数组 | |
| ones() | 根据指定形状和dtype创建全1数组 | |
| empty() | 根据指定形状和dtype创建空数组(随机值) | |
| eye() | 根据指定边长和dtype创建单位矩阵 |






原文:https://www.cnblogs.com/waller/p/11971636.html