python——创建各种特殊数组(numpy)
目录
前言
一、numpy是什么?
NumPy 是一个 Python 包。 它代表 “Numeric Python”。 它是一个由多维数组对象和用于处理数组的例程集合组成的库。
Numeric,即 NumPy 的前身,是由 Jim Hugunin 开发的。 也开发了另一个包 Numarray ,它拥有一些额外的功能。 2005年,Travis Oliphant 通过将 Numarray 的功能集成到 Numeric 包中来创建 NumPy 包。
二、使用步骤
1.安装numpy
dos命令如下:
pip install numpy
2.引入包
代码如下:
import numpy as np
三、创建数组
1.全一/全零数组
创建全一数组:ones()函数
创建全零数组:zeros()函数
函数语法:
ones(shape,dtype,order)
zeros(shape,dtype,order)
shape:描述数组的维度,以及各个维度内部的元素个数。该参数值是一个int或一个int元组,用于定义数组的大小。 如果我们仅指定一个int变量,则将返回一维数组。 对于一个整数元组,将返回给定形状的数组。
dypte:指定数组元素的数据类型。该参数是一个可选参数,默认值为float。
order:定义内存中以行优先还是以列优先顺序存储多维数组,其是一个可选参数,默认值为C风格(行优先),还可取F风格(列优先),一般取默认值。
示例如下:
#创建一个shape为(3,2),dtype为int16的全一数组:
arr = np.ones((3,2),dtype=int16)
>>>arr
array([[1, 1],
[1, 1],
[1, 1]], dtype=int16)
#创建一个shape为(3,3),dtype为np.int64的全零数组:
brr = np.zeros((3,3),dtype=np.int64)
>>>brr
array([[0, 0, 0],
[0, 0, 0],
[0, 0, 0]], dtype=int64)
2.数字序列数组
创建由数字序列构成的数组:arange()函数
函数语法:
arange(start,stop,step,dtype)
start:起始数字,默认为0
stop:结束数字
step:步长,默认为1
dtype:指定数据类型
示例如下:
#创建一个只设置结束数字为4的数字序列数组:
crr = np.arange(4)
>>>crr
array([0, 1, 2, 3])
3.等差数列数组
创建等差数列数组:linspace()函数
函数语法:
linspace(start,stop,num)
start:起始数字
stop:结束数字
num:个数
示例如下:
#创建起始数字为1,结束数字为10,个数为10的等差数列数组
drr = np.linspace(1,10,10)
>>>drr
array([ 1., 2., 3., 4., 5., 6., 7., 8., 9., 10.])
#这是使用默认的dtype参数(float)的结果
>>>drr
array([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10], dtype=int16)
#这是设置dtype=np.int16的结果
4.等比数列数组
创建等比数列数组:linspace()函数
函数语法:
logspace(start,stop,num,base)
start:起始指数
stop:结束指数
num:个数
base:公比
示例如下:
#创建起始指数为1,结束指数为10,个数为5,公比为2的等比数列数组
err = np.logspace(1,5,5,base=2,dtype=np.int16)
>>>err
array([ 2, 4, 8, 16, 32], dtype=int16)
总结
本篇文章简单介绍了python利用numpy包中4个函数创建不同的特殊数组,实属小白上路,若理解或描述有误,请各位不吝赐教,也希望能帮到大家!