Numpy学习(1)

记录我学习Numpy过程

1. 介绍

(1)NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。NumPy 的前身 Numeric 最早是由 Jim Hugunin 与其它协作者共同开发,2005 年,Travis Oliphant 在 Numeric 中结合了另一个同性质的程序库 Numarray 的特色,并加入了其它扩展而开发了 NumPy。NumPy 为开放源代码并且由许多协作者共同维护开发。NumPy 是一个运行速度非常快的数学库,主要用于数组计算,包含:一个强大的N维数组对象 ndarray广播功能函数整合 C/C++/Fortran 代码的工具线性代数、傅里叶变换、随机数生成等功能

2. Numpy应用

(1)NumPy 通常与 SciPy(Scientific Python)和 Matplotlib(绘图库)一起使用, 这种组合广泛用于替代 MatLab,是一个强大的科学计算环境,有助于我们通过 Python 学习数据科学或者机器学习。SciPy 是一个开源的 Python 算法库和数学工具包。SciPy 包含的模块有最优化、线性代数、积分、插值、特殊函数、快速傅里叶变换、信号处理和图像处理、常微分方程求解和其他科学与工程中常用的计算。Matplotlib 是 Python 编程语言及其数值数学扩展包 NumPy 的可视化操作界面。它为利用通用的图形用户界面工具包,如 Tkinter, wxPython, Qt 或 GTK+ 向应用程序嵌入式绘图提供了应用程序接口(API)。
NumPy 官网
Matplotlib 官网
SciPy 官网

3. Numpy 安装

(1) 在电脑安装python之后,设置好环境变量。这里由两个环境变量,一个是python解释器的文件夹;一个是script的文件夹(这个文件夹下面由一个pip程序)
(2)用win+r组合键进入cmd,输入:

pip install numpy 

等待片刻,最后安装成功。
打开python IDE输入以下代码验证是否安装成功。

>>> from numpy import *
>>> eye(4)
array([[1., 0., 0., 0.],
       [0., 1., 0., 0.],
       [0., 0., 1., 0.],
       [0., 0., 0., 1.]])

4. Ndarray 对象

(1)NumPy 最重要的一个特点是其 N 维数组对象 ndarray,它是一系列同类型数据的集合,以 0 下标为开始进行集合中元素的索引。ndarray 对象是用于存放同类型元素的多维数组。ndarray 中的每个元素在内存中都有相同存储大小的区域。
例子1:

import numpy as np 
a = np.array([321])  
print (a)

结果:

[321]

例子2:

import numpy as np 
a = np.array([[1,  2],  [3,  4]])  
print (a)

结果:

[[1, 2] 
 [3, 4]]

例子3:

import numpy as np 
a = np.array([1,  2,  3], dtype = complex)  
print (a)

结果:

[ 1.+0.j,  2.+0.j,  3.+0.j]

5. 数组属性

属性说明

  1. ndarray.ndim秩,即轴的数量或维度的数量
  2. ndarray.shape数组的维度,对于矩阵,n 行 m 列
  3. ndarray.size数组元素的总个数,相当于 .shape 中 n*m 的值
  4. ndarray.dtypendarray 对象的元素类型
  5. ndarray.itemsizendarray 对象中每个元素的大小,以字节为单位
  6. ndarray.flagsndarray 对象的内存信息
  7. ndarray.realndarray元素的实部
  8. ndarray.imagndarray 元素的虚部
  9. ndarray.data包含实际数组元素的缓冲区,由于一般通过数组的索引获取元素,所以通常不需要使用这个属性。

6. 创建数组

(1)下面创建一个空的矩阵://三行两列的空数组

import numpy as np 
x = np.empty([3,2], dtype = int) 

(2)下面创建一个指定大小的全0矩阵:

import numpy as np
 
# 默认为浮点数
x = np.zeros(5) 
print(x)
 
# 设置类型为整数
y = np.zeros((5,), dtype = np.int) 
print(y)
[0. 0. 0. 0. 0.]
[0 0 0 0 0]

(3)下面创建一个指定大小的全1矩阵:

import numpy as np
 
# 默认为浮点数
x = np.ones(5) 
print(x)
 
# 自定义类型
x = np.ones([2,2], dtype = int)
print(x)
[1. 1. 1. 1. 1.]
[[1 1]
 [1 1]]

(4)下面创建一个指定范围的数组:

import numpy as np
x = np.arange(10,22,2)  
print (x)
a = np.linspace(1,10,10)
print(a)
a = np.linspace(10, 20,  5, endpoint =  True)  
print(a)
[10  12  14  16  18 20]
[ 1.  2.  3.  4.  5.  6.  7.  8.  9. 10.]
[10. 12. 14. 16. 18. 20.]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值