基本类型
import numpy
vector=numpy.array([
5,
10,
15,
20])
vector==
10
matrix=numpy.array([[
5,
10,
15],[
20,
25,
30],[
35,
40,
45]])
matrix==
25
类型转化
astype函数 dtype函数
vector1=numpy.array([
"1",
"2",
"3"])
print(vector1.dtype)
print (vector1)
vecotor1=vector1.astype(float)
print (vecotor1.dtype)
print (vecotor1)
矩阵求和
matrix=numpy.array([[
5,
10,
15],
[
20,
25,
30],
[
35,
40,
45]])
print(matrix.sum(axis=
1))
print(matrix.sum(axis=
0))
数组与矩阵
arange函数 reshape函数
import numpy
as np
print(np.arange(
15))
a=np.arange(
15).reshape(
3,
5)
a.shape
a.ndim
a.size
a.dtype.name
特殊矩阵
np.zeros((
3,
4))
np.ones((
2,
3,
4),dtype=np.int32)
np.arange(
10,
30,
5)
np.random.random(
2,
3)
from numpy
import pi
np.linspace(
0,
2*pi,
100)
矩阵运算
A=np.array([[
1,
1],[
0,
1]])
B=np.array([[
2,
0],[
3,
4]])
print(A*B)
print(A.dot(B))
print(np.dot(A,B))
A=mat(A)
A.I
矩阵变形
import numpy
as np
a=np.floor(
10*np.random.random((
3,
4)))
a.ravel()
a.reshape(
6,
2)
a.T
矩阵拼接与切分
a=np.floor(
10*np.random.random((
2,
2)))
b=np.floor(
10*np.random.random((
2,
2)))
np.vstack((a,b))
np.hstack((a,b))
a=np.floor(
10*np.random.random((
2,
12)))
np.vsplit(a,
2)
np.hsplit(a,
3)
np.hsplit(a,(
3,
4))
矩阵复制
a=np.arrange(
12)
b=a
b
is a
b.shape=(
3,
4)
a.shape
c=a.view()
c
is a
c.shape=
2,
6
c[
0,
4]=
1234
a.shape
a
d=a.copy()
d
is a
d[
0,
0]=
999
a
tile整体复制
a=np.arange(
0,
40,
10)
b=np.tile(a,(
4,
3))
排序
argsort sort sorted
a=np.array([[
4,
3,
5],[
1,
2,
1]])
b=np.sort(a,axis=
1)
a.sort(axis=
1)
a=np.array([
4,
3,
1,
2])
j=np.argsort(a)