Numpy学习小结(1)

NumPy系统是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵。

 

Numpy中的数据类型

数据类型

名称

inti

由所在平台决定其大小的整数(一般为int32int64

int8

一个字节大小,-128 127

int16

整数,-32768 32767

int32

整数,-2 ** 31 2 ** 32 -1

int64

整数,-2 ** 63 2 ** 63 - 1

uint8

无符号整数,0 255

uint16

无符号整数,0 65535

uint32

无符号整数,0 2 ** 32 - 1

uint64

无符号整数,0 2 ** 64 - 1

float16

半精度浮点数:16位,正负号1位,指数5位,精度10

float32

单精度浮点数:32位,正负号1位,指数8位,精度23

float64/float

双精度浮点数:64位,正负号1位,指数11位,精度52

bool

用一个字节存储的布尔类型(TrueFalse

complex64

复数,分别用两个32位浮点数表示实部和虚部

complex128complex

复数,分别用两个64位浮点数表示实部和虚部

 

Numpy数组的秩、维、轴

       在numpy中数组的维数也称为秩,比如一维数组的秩就是一,二维数组的秩就是二。轴就是numpy数组中的一维数组,所以从数量上来说numpy数组的轴的数量与维数的数量和秩的数量相同。

 

ndarray对象属性简介

       ndarray对象是numpy数组中最常用的对象,下面对ndarray对象的常用属性做简要介绍:

l  ndarray.size:返回数组中元素的总个数;

l  ndarray.dtype:表示数组中元素类型的对象;

l  ndarray.ndim:表示数组的维数(维数、秩、轴在数量上相等)

l  ndarray.shape:表示数组的维度,即数组有几行几列

l  ndarray.itemsize:表示数组中每个元素有多少字节

 

创建numpy数组

Ø  创建全0数组

>>>from  numpy import *

>>>arr = zeros(3)

>>>arr

array([0.,  0., 0.])

>>>arr.shape

(3,)

>>>arr = zeros((2, 3), dtype = int)#指定创建int类型的全0数组

>>>arr

array([[0, 0,0],

       [0, 0, 0]])

>>>arr.dtype

dtype('int64')

>>>arr.dtype.itemsize

8

>>>arr.shape

(2,3)

>>>a = (3, 4) 

>>>arr = zeros(a)

>>>arr

array([[ 0.,  0., 0.,  0.],

       [ 0., 0.,  0.,  0.],

       [ 0., 0.,  0.,  0.]])

>>>arr.shape

(3,4)

>>>arr= zeros(a,dtype=int)

>>>arr

array([[0, 0,0, 0],

       [0, 0, 0, 0],

       [0, 0, 0, 0]])

>>>arr= zeros_like(arr)

>>>arr

array([[0, 0,0, 0],

       [0, 0, 0, 0],

       [0, 0, 0, 0]])

>>>arr= ones_like(arr)#创建与arr维度相同的全1数组

>>>arr

array([[1, 1,1, 1],

       [1, 1, 1, 1],

       [1, 1, 1, 1]])

 

 

Ø  创建全1数组

       >>>arr= ones(3)#创建1行3列的前1数组

       >>>arr

       array([1.,  1., 1.])

       >>>arr.shape#输出数组维度

       (3,)

       >>>arr= ones((2,3))#表示创建2行3列的全1数组

       >>>arr#发现输出的数组元素后面都带有一个点,这表示数据的浮点型数据类型,可以使用下面的方式查看数组中数据类型

       array([[1.,  1., 1.],

      [ 1.,  1.,  1.]])

       >>>arr.dtype

       dtype('float64')

       >>>#查看数组中每个元素占多少字节

       >>>arr.dtype.itemsize

       8

       >>>#要创建自己需要的数据类型的numpy数组可以使用下面的方式在创建数组的时候指定数据类型

       >>>arr= ones((2,3),dtype=int)#创建两行三列的数组并指明数据类型为int

       >>>arr

       array([[1,1, 1],

      [1, 1, 1]])

       >>>arr= ones( (2,2,3), dtype=int16 ) #参数中第一个2表示轴数,后面的2和3分别表示行数和列数,同时执行了数据类型

       >>>arr

       array([[[1,1, 1],

       [1, 1, 1]],

 

      [[1, 1, 1],

       [1, 1, 1]]], dtype=int16)

 

Ø  创建一般数组

>>>arr= array([1,2,3])

>>>arr

array([1, 2,3])

>>>arr.dtype

dtype('int64')

>>>arr= array([0.3,1.5,3.5])

>>>arr.dtype

dtype('float64')

>>>arr= array( [ (1.2,2.3,3.4), (1.6,2.8,3.1) ] )

>>>arr

array([[1.2,  2.3,  3.4],

       [ 1.6, 2.8,  3.1]])

>>>arr = array( [ [1,2], [3,4] ], dtype=complex) 

>>>arr

array([[1.+0.j,  2.+0.j],

       [ 3.+0.j,  4.+0.j]])

 

Ø  arange()创建数组

>>>arange(0,20,5)#从0开始每隔5选择一个数据,到20截止,不包括20

array([ 0,  5, 10, 15])

>>> arange(0,2,0.5) #从0开始每隔0.5选择一个数据,到2截止

array([ 0.,  0.5, 1. ,  1.5])

Ø  Linspace函数创建数组

>>>numpy.linspace(0, 1, 5)#在0—1之间选择5个均分的数据,包括1

array([ 0. ,  0.25,  0.5 , 0.75,  1.  ])
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值