python每日学习11:numpy库的用法(下)
# tile()和repeat()函数的使用
a=np.arange(4)
np.tile(a,2)##复制2次
np.tile(a,(3,2))#行列复制
print(np.repeat(a, 2))
a=np.arange(1,13).reshape(3,4)
np.repeat(a,2)
print(np.repeat(a, 2, axis=0))
print(np.repeat(a, 2, axis=1))
# roll()函数的使用
b=np.arange(12)
print(np.roll(b, 3))#一维数组,向后调3个
print(np.roll(b, -1))#向前调2个
aa=np.arange(1,13).reshape(3,4)
print(np.roll(aa, 2))
print(np.roll(aa, 2, axis=0))
# resize()函数的使用
aa.reshape(4,3)#修改维度,元素个数必须相同
np.resize(aa,(5,6)) #resize重新调整数组的大小,元素个数可以不相同
# replace()和put()函数的使用
aa=np.random.randint(40,100,(3,4))
np.place(aa,aa<60,0)##小于60分的 全部替换为0
aa=np.arange(1,13).reshape((3,4))
np.put(aa,2,100)#put()指定的索引处的元素替换为指定的值
# savetxt()和loadtxt()函数的使用
a=np.random.randint(-50,100,1000)
#保存
np.savetxt('',a,fmt='%d')
#加载
b=np.loadtxt('',dtype=int)
# any()、all()函数的使用
x=np.array([False,True,False,1,0,True])
np.any(x)#any函数 只要有一个元素为True,则结果返回True
np.all(x)#all函数 只有所有元素都为True,则结果返回True
# where()函数的使用
np.random.seed()
a=np.random.randint(20,100,10)
print(a)
print(np.where(a>50,True,False))
# dot函数的使用
x=np.array([[1,2],[3,4]])
y=np.array([[2,3],[1,2]])
x.dot(y)#dot函数 矩阵相乘 矩阵相乘前提是,第一个矩阵的列数和第二个矩阵的行数要相同
x.dot(3) #每个元素与3相乘