1,linspace(),可以通过等差数列的一维数组的参数 endpoint 指定是否包含终值,默认 True 为包含终值。如果设定为 False,不包含终值。
logspace(a,b,num),参数和linspace一样的,只是起始值10^a和终止值10^b间有num个值。
2,b = JS.arange(0,1,0.1) #步长为0.1,范围在(0,1)之间。
3,c = JS.array([[1,2,3,4],[4,5,6,7],[7,8,9,10]]);
c.shape = 2,6 #将矩阵转为2行6列
c.shape = 3,-1#3行不限列
c.shape = -1,3#3列不限行
数组操作笔记:
A[ : 2]:表示索引 0至1行;
A[ :, 2]:表示所有行的第3列。
[::-1]涉及的数字倒序输出:
注:格式:起始位置:终止位置:步长(None默认为默认值,为1)
注意:[::2,2:]
Slice(None,None,2),slice(2,None,None)
4,用 fromfunction 通过此函数创建数组
JS.fromfunction(fun,(m,n)),建立一个m*n的二维数组,也可以建立一个n个元素的一维数组JS.fromfunction(fun,n),
import numpy as JS
def func(i,j):
return (i + 1)*(j+1)
#(9,9)建立一个9*9的数组,
A = JS.fromfunction(func,(9,9))
print(A)
5,建立数组
import numpy as JS
#建立一个差为1的一维数组
A = JS.arange(0,10,1)
print(A)
print(A[3:8])
#打印等差为2的数组
print(A[3:8:2])
BA = JS.array([[1,2,3,4],[5,6,7,8]])
B = BA[1,2]
C = BA[(1,2)]
print(BA)
print(B)
print(C)
6,slice的学习和使用
import numpy as JS
A = JS.array([[1,2,3,4],[5,6,7,8]])
"""
a[,,]一般指的是三个参数,第一个和第二个参数是上下限,第三个参数是步长
"""
#::2不限上下限,步长为2,即取第一行,2:上限为2,其它不限
B = A[::2,2:]
print(A)
print(B)
7,字符数组
import numpy as JS
Person = JS.dtype({
'names':['name','age','weight'],
'formats':['S30','i','f']},align = True)
a = JS.array([('wan',44,72),('jun',35,67)],dtype = Person)
print(a)
总结:1,有时候函数传递的不止一个值,在python中我们利用u=np.dot(v),我们传递的是一个向量v(里面的是一系列的v1,v2,v3...),我们得到的返回值也是一个向量。
2,多用矩阵,少用数组,因为我们用数组时不确定时行数组还是列数组,容易造成错误。