清空变量:在IPython里输入reset再输入y
清空输入:在IPython里输入reset in再输入y
清空输出:在IPython里输入reset out再输入y
数组
1. 构建
1.1 最普通方式
# -*- coding: utf-8 -*- import numpy as np a = np.array([1, 2, 3, 4]) b = np.array([[1, 2, 3, 4],[5, 6, 7, 8]])
注意python不像matlab元素之间可以空格,这里只能逗号,数组的下标从0开始
1.2 改变类型
np.array([[1, 2, 3, 4],[4, 5, 6, 7]], dtype=np.float) Out[14]: array([[ 1., 2., 3., 4.], [ 4., 5., 6., 7.]]) np.array([[1, 2, 3, 4],[4, 5, 6, 7]], dtype=np.complex) Out[15]: array([[ 1.+0.j, 2.+0.j, 3.+0.j, 4.+0.j], [ 4.+0.j, 5.+0.j, 6.+0.j, 7.+0.j]])
可以通过dtype参数指定类型
1.3 通过函数构建序列
np.arange(5) Out[2]: array([0, 1, 2, 3, 4]) np.arange(1, 5) Out[3]: array([1, 2, 3, 4])
np.arange(0,1,0.1) Out[18]: array([ 0. , 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9]) np.linspace(0,1,12) Out[19]: array([ 0. , 0.09090909, 0.18181818, 0.27272727, 0.36363636, 0.45454545, 0.54545455, 0.63636364, 0.72727273, 0.81818182, 0.90909091, 1. ]) np.linspace(0,1,12,endpoint=0) Out[20]: array([ 0. , 0.08333333, 0.16666667, 0.25 , 0.33333333, 0.41666667, 0.5 , 0.58333333, 0.66666667, 0.75 , 0.83333333, 0.91666667])
arange通过指定初值、终值、步长来构建序列,但不包括终值
linspace通过指定初值、终值、个数来构建序列,包括终值,可指定endpoint参数=0来不包括终值
2. 改变大小
type(a) Out[3]: numpy.ndarray a.shape Out[4]: (4,) b.shape Out[5]: (2, 4) b.shape=(1,-1);b Out[9]: array([[1, 2, 3, 4, 5, 6, 7, 8]]) b.shape=(4,2);b Out[10]: array([[1, 2], [3, 4], [5, 6], [7, 8]])
type函数可以看变量类型,通过对shape属性重新赋值可以改变维数,但其实并不改变内存里的位置,可以只指定行的维数,列的维数为-1,可以自动换算出列的维数(反之亦可)
时间: 2024-11-15 08:15:53