numpy学习(一)
小编整理了一些numpy常用的函数,也是方便小编以后查看。
为了方便 import numpy as np 。
1 np.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)
常用的有dtype,ndim,写参数时要指名。
dtype的类型有:
np.int64 #Signed 64-bit integer types np.float32 #Standard double-precision floating point np.complex #Complex numbers represented by 128 floats np.bool #Boolean type storing TRUE and FALSE values np.object #Python object type np.string_ #Fixed-length string type np.unicode_ #Fixed-length unicode type
2 数据类型对象(dtype)
C++/C 这样定义一个结构体类型,里面又许多不同的数据:
struct node{ int age; string name; bool sex; };
np.dype也可以实现上述的内容,首先就要构建一个数据结构体类型,定义相关字段名和数据类型。
注意U大写时才是Unicode类型,小写为整形。
teacher = np.dtype([(‘name‘,‘U20‘),(‘age‘,‘i4‘),(‘sex‘,‘string_‘)])one = np.array([("张",50,‘man‘),("江",32,‘man‘),("卢",30,‘man‘)])print(one)print(one[0])
结果:
[[‘张‘ ‘50‘ ‘man‘] [‘江‘ ‘32‘ ‘man‘] [‘卢‘ ‘30‘ ‘man‘]] [‘张‘ ‘50‘ ‘man‘]
3 数组矩阵的属性。
np的方法 都可以制定axis=0表示对列进行计算 axis=1对行进行计算
a=array([1,2,3])或者a=array([(1,2,3),(4,5,6),(7,8,9)])或者a=array([[1,2,3],[4,5,6],[7,8,9]])
ones((3,4)) 创建内容全1的数组 zeros((2,3),dtype=int16) 内容全0 empty((2,3))内容随机
a=arange(1,2,0.1) 创建一个从1开始至2间隔为0.1的数组
a.size数组元素的个数
a.shape数组的形状 其中a.reshap(2,4,3) 表示调整数组a的维数
a.ndim数组轴的个数
a.dtype数组元素的类型
a.real a.imag 分别表示数组的实部和虚部
ndarray.itemsize 以字节的形式返回数组中每一个元素的大小
4 创建数组
numpy.empty 方法用来创建一个指定形状(shape)、数据类型(dtype)且未初始化的数组:
注意:其中的值都是未初始化的,但不为0.
numpy.zeros创建指定大小的数组,数组元素以 0 来填充:
# 自定义类型 z = np.zeros((2,2), dtype = [(‘x‘, ‘i4‘), (‘y‘, ‘i4‘)]) print(z)
numpy.ones创建指定形状的数组,数组元素以 1 来填充,就是创建单位矩阵
5 从已有的数组转化为array
numpy.asarray(a, dtype = None, order = None)
a为任意形式的输入参数,可以是,列表, 列表的元组, 元组, 元组的元组, 元组的列表,多维数组
import numpy as np x = [1,2,3] a = np.asarray(x) print (a)
6 numpy.arrange(start, stop, step, dtype)
步长step默认为1
import numpy as np # 设置了 dtype x = np.arange(5, dtype = float) print (x)
7 numpy.linspace 函数用于创建一个一维数组,数组是一个等差数列构成的,格式如下
np.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)
其中num默认为50 endpoint 该值为 true
时,数列中中包含stop
值,反之不包含,默认是True。 restep为true时显示间距
import numpy as np a = np.linspace(1,10,10) print(a)
8 numpy.logspace 函数用于创建一个于等比数列。格式如下:
np.logspace(start, stop, num=50, endpoint=True, base=10.0, dtype=None)
base 就是 对数log的底数
import numpy as np # 默认底数是 10 a = np.logspace(1.0, 2.0, num = 10) print (a)
[ 10. 12.91549665 16.68100537 21.5443469 27.82559402 35.93813664 46.41588834 59.94842503 77.42636827 100. ]