您的位置:首页 > 编程语言 > Python开发

【Python】numpy学习总结1

2017-08-23 16:12 393 查看
array的创建

import numpy as np

a=array(1,2,3,4)#创建数组a
print(a)

b=arrray([1,2,3],
[2,3,4])#创建矩阵a

c=np.zeros((3,4),dtype=np.int32)#创建三行四列的零矩阵,类型为int32

d=np.ones((3,4),dtype=np.float32)#创建三行四列的一矩阵,类型为float32

e=np.arange(12).reshape(3,4)#创建range(0,12),且重新整理形状为三行四列矩阵
f=np.linspace(1,10,6).reshape(2,3)#创建1到10的行向量,开始为1,结尾为10,在1和10中间有6段,并且重新整理形状为两行三列的矩阵


array的运算1

import numpy as np

a=np.array([10,20,30,40])
b=np.arange(4)

print(a,b)
c=a-b
print(c)

d=b**2#d为b的平方
print(d)

e=10*np.sin(a)#sin函数
print(e)

a1=np.array([[10,20],
[30,40]])
b1=np.arange(4).reshape(2,2)
print(a1)
print(b1)

c1=a1*b1#对应相乘,叉乘
print(c1)
c_dot=np.dot(a1,b1)#点乘形式1
c_dot2_=a1.dot(b1)#点乘形式2
print(c_dot)
print(c_dot2_)
###

###
a=np.random.random((2,4))#随机数啊a,两行四列
print(a)

print(np.sum(a))
print(np.min(a))
print(np.max(a))

print(np.sum(a,axis=1))#axis=1求行的和
print(np.sum(a,axis=0))#axis=0求列的和

print(np.max(a,axis=1))#每一行的最大值
print(np.max(a,axis=0))#每一列的最大值

array运算2
import numpy as np

a=np.arange(2,14).reshape(3,4)

print(a)
print(np.argmin(a))#a的第一位0
print(np.argmax(a))#a的最后一位11

print(np.mean(a))#平均值
print(np.average(a))#平均值

print(np.median(a))#中位数

print(np.cumsum(a))#累加
print(np.diff(a))#累差

print(np.sort(a))#排序

print(np.transpose(a))#转置,行列互换
print((a.T).dot(a))#矩阵乘法运算

print(np.clip(a,5,9))#小于5的变成5,大于9的变成9,中间不变,clip剪掉

print(np.mean(a,axis=0))#列平均
print(np.mean(a,axis=1))#行平均


array运算3
import numpy as np

a=np.arange(3,15).reshape(3,4)

print(a.flatten())#变平,使的3*4的矩阵变成一个一行的矩阵
import numpy as np

a=np.array([1,1,1])
b=np.array([2,2,2])

c=np.vstack((a,b))#上下合并
d=np.hstack((a,b))#左右合并
#print(c)
#print(d)


import numpy as np

a=np.array([1,1,1])[:,np.newaxis]#由行向量变成了列向量
b=np.array([2,2,2])[:,np.newaxis]

c=np.concatenate((a,b,b,a),axis=1)#axis=1即横向维度合并 ,axis=0即上下维度合并
#print(a)
#print(b)
print(c)
print(np.hstack((a,b,a,b)))#列合并
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: