1、hstack()&vstack()
import numpy as np
a = [1,2,3]
b = [3,4,5]
a1 = [[1],[2],[3]]
b1 = [[2],[2],[3]]
c = np.hstack((a,b))
c1 = np.hstack((a1,b1))
d = np.vstack((a,b))
d1 = np.vstack((a1,b1))
print(c)
print(c1)
print(d)
print(d1)
[1 2 3 3 4 5]
[[1 2]
[2 2]
[3 3]]
[[1 2 3]
[3 4 5]]
[[1]
[2]
[3]
[2]
[2]
[3]]
横向和纵向的合并,其中参数可以是元组,列表,或者numpy数组,返回结果为numpy的数组。
2、numpy.genfromtx("exm.txt",delimiter="",dtype = float)
读取txt文件,delimiter是划分依据,dtype是读取的数据类型。
3、.shape .dtype .astype(object)
查看结构,查看类型,类型转换
4、.arange() & .linspace()
栗子:
a = np.arange(0,20)
b = np.arange(0,20,2)
print("a:" ,a)
print("b:" ,b)
a: [ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19]
b: [ 0 2 4 6 8 10 12 14 16 18]
a = np.linspace(0,1,11)#第三个参数不写默认50
print("a:",a)
a: [0. 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1. ]
5、 .reshape() & .ravel()
栗子:
a = np.arange(0,20)
b = a.reshape(2,10)#等价b = a.reshape(2,-1)
c = a.reshape(4,5)
print("b:" ,b)
print("c:" ,c)
b: [[ 0 1 2 3 4 5 6 7 8 9]
[10 11 12 13 14 15 16 17 18 19]]
c: [[ 0 1 2 3 4]
[ 5 6 7 8 9]
[10 11 12 13 14]
[15 16 17 18 19]]
a1 = b.ravel()
print("a1:" ,a1)
a1: [ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19]
6、.zeros((a,b)) .ones((a,b))
7、.random.random((a,b))
随机生成 a行b列
8、.sum()
栗子:
a = np.arange(0,20)
b = a.reshape(4,5)
c = b.sum(axis = 0)#列相加
d = b.sum(axis = 1)#行相加
e = b.sum()#总和
print("b:" ,b)
print("c:" ,c)
print("d:" ,d)
print("e:" ,e)
b: [[ 0 1 2 3 4]
[ 5 6 7 8 9]
[10 11 12 13 14]
[15 16 17 18 19]]
c: [30 34 38 42 46]
d: [10 35 60 85]
e: 190
9、.T .exp .sqrt .floor
.T 转置 .floor 向下取整
10、.dot() &.dot(a,b)& a*b
栗子:
a = np.array([[1,2],[2,3]])
b = a * a
c = a.dot(a)
print("b:" ,b)
print("c:" ,c)
b: [[1 4]
[4 9]]
c: [[ 5 8]
[ 8 13]]
11、.vsplit()&.hsplit()
栗子:
a = np.arange(0,20)
b = a.reshape(2,10)#等价b = a.reshape(2,-1)
c = np.vsplit(b,2)
d = np.hsplit(b,5)#返回列表
print("b:" ,b)
print("c:" ,c)
print("d:" ,d)
b: [[ 0 1 2 3 4 5 6 7 8 9]
[10 11 12 13 14 15 16 17 18 19]]
c: [array([[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]]), array([[10, 11, 12, 13, 14, 15, 16, 17, 18, 19]])]
d: [array([[ 0, 1],
[10, 11]]), array([[ 2, 3],
[12, 13]]), array([[ 4, 5],
[14, 15]]), array([[ 6, 7],
[16, 17]]), array([[ 8, 9],
[18, 19]])]
d = np.hsplit(b,(4,6))#将4~6行切开
d: [array([[ 0, 1, 2, 3],
[10, 11, 12, 13]]),
array([[ 4, 5],
[14, 15]]),
array([[ 6, 7, 8, 9],
[16, 17, 18, 19]])]
12、a = b & .view() &.copy()
a=b 指向一样,同时改变
.view() 前向复制,指向不同,但同时改变
.copy() 完全无关
13、
import numpy as np
a = np.arange(0,20)
b = a.reshape(2,10)
c = (b == 1)#bool类型,括号中成立的元素返回True,其他返回False
d = b.argmax(axis = 0)#返回列的最大值的索引
e = b.argmax(axis = 1)#返回行的最大值的索引
print("b:" ,b)
print("c:" ,c)
print("d:" ,d)
print("e:" ,e)
b: [[ 0 1 2 3 4 5 6 7 8 9]
[10 11 12 13 14 15 16 17 18 19]]
c: [[False True False False False False False False False False]
[False False False False False False False False False False]]
d: [1 1 1 1 1 1 1 1 1 1]
e: [9 9]
14、.sort(a,axis)&.argsort()
栗子:
import numpy as np
a = np.random.random((3,4))
b = np.sort(a,axis = 0)#列排序
c = np.sort(a,axis = 1)#行排序
d = np.sort(a)#行排序
print("a:" ,a)
print("b:" ,b)
print("c:" ,c)
print("d:" ,d)
a: [[0.59680725 0.86586801 0.88862876 0.49953693]
[0.20965139 0.6333464 0.68929673 0.65934551]
[0.02328157 0.76293151 0.66431713 0.50473978]]
b: [[0.02328157 0.6333464 0.66431713 0.49953693]
[0.20965139 0.76293151 0.68929673 0.50473978]
[0.59680725 0.86586801 0.88862876 0.65934551]]
c: [[0.49953693 0.59680725 0.86586801 0.88862876]
[0.20965139 0.6333464 0.65934551 0.68929673]
[0.02328157 0.50473978 0.66431713 0.76293151]]
d: [[0.49953693 0.59680725 0.86586801 0.88862876]
[0.20965139 0.6333464 0.65934551 0.68929673]
[0.02328157 0.50473978 0.66431713 0.76293151]]
a = np.random.random((3,4))
b = np.argsort(a,axis = 0)
c = np.argsort(a,axis = 1)
d = np.argsort(a)#返回索引
print("a:" ,a)
print("b:" ,b)
print("c:" ,c)
print("d:" ,d)
a: [[0.48456124 0.19528918 0.75910547 0.20068122]
[0.63121656 0.14947605 0.16972333 0.2755753 ]
[0.40513823 0.60201346 0.04358978 0.32297534]]
b: [[2 1 2 0]
[0 0 1 1]
[1 2 0 2]]
c: [[1 3 0 2]
[1 2 3 0]
[2 3 0 1]]
d: [[1 3 0 2]
[1 2 3 0]
[2 3 0 1]]
15、.tile()
import numpy as np
a = np.array([1,2,3])
b = np.tile(a,(2,3))#扩展
print("a:" ,a)
print("b:" ,b)
a: [1 2 3]
b: [[1 2 3 1 2 3 1 2 3]
[1 2 3 1 2 3 1 2 3]]