Numpy

 简介

  NumPy是Python语言的一个扩充程序库。支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。Numpy内部解除了Python的PIL(全局解释器锁),运算效率极好,是大量机器学习框架的基础库!

常用函数

1、np.array()

  • np.array([1,2,3,4,5])

2、numpy array 和 python list的区别

  • 标准Python的列表(list)中,元素本质是对象。如:L = [1, 2, 3],需要3个指针和三个整数对象,对于数值运算比较浪费内存和CPU。因此,Numpy提供了ndarray(N-dimensional array object)对象:存储单一数据类型的多维数组。

3、如何强制生成一个 float 类型的数组

  • d = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]], dtype=np.float)
d = np.array([1, 2, 3, 4,5, 6, 7, 8], dtype=np.float)
print(d)

#[1. 2. 3. 4. 5. 6. 7. 8.]      

4、astype()

  • d.astype(int)强制类型转换

5、dtype()

  • d.dtype()返回数组中元素的数据类型

6、np.arange()

  • np.arange(0,10):生成[0 1 2 3 4 5 6 7 8 9] 左开右闭不包括10

7、arange 和python 的range 函数的区别

  • arange可以生成浮点类型,而range只能是整数类型
import numpy as np
print(np.arange(0,10))
print(list(range(0,10)))

#[0 1 2 3 4 5 6 7 8 9]
#[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

8、np.linspace()

  • np.linspace(1, 10, 10)构造等差数列,三个参数依次是:开始值,结束值,共几个数字,包括开始和结束值;

  • np.linspace(1, 10, 10, endpoint=False):不包括终止值;

9、np.logspace()

  • np.logspace(1,4,4,base=2,endpoint=True):构造等比数列,包括终止值;

10、随机数生成

  • np.random.randint(a,b,size=(c,d)):随机生成(a*b)个c-d的数的二维数组

  • np.random.rand(0,10):随机生成 0-10的10个数字  

11、np.array 的数组切片

  • a = [1,2,3,4,5,6,7]
  • 三冒号规则:[开始:结尾:步长]

  • 步长为-1,意味着反转:a[::-1]=[7,6,5,4,3,2,1]

posted @ 2018-11-15 14:47  Charlie大夫  阅读(350)  评论(0编辑  收藏  举报