NumPy数值基础

一:NumPy多维数组

1.创建数组

 

#创建数组
data1=np.array([1,2,3,4])
print(data1)
#创建等差数组
data4=np.linspace(20,30,4)   #开始的值,结束的值,元素的个数
print(data4)

#创建等比数组
data5=np.logspace(1,10,5)
print(data5)

#创建全0矩阵
data6=np.zeros(6)
print(data6)
#创建几行几列的全0矩阵
data66=np.zeros([2,2])
print(data66)

#创建全1数组·
data7=np.ones(6)
print(data7)
#创建几行几列的全1矩阵
#data77=np.zeros([2,4])
data77=np.zeros((2,4))
print(data77)

#对角矩阵
data8=np.diag([1,3,6,9])
print(data8)
#对角线为1,其他位置为0的矩阵
data88=np.eye(4)
print(data88)

 2.查看数组属性

#查看数组属性
data=np.array([[1,2,3],[6,7,8]])
print("轴的个数:",data.ndim)
print("形状:",data.shape)
print("元素个数:",data.size)

#设置数组的属性
dataa=data.shape=3,2
print("形状",dataa)
#数组类型转换
a=np.arange(5)
print(a.dtype)
a1=a.astype(np.float32)
print(a1.dtype)


#生成随机数
a2=np.random.randint(10,100,size=(3,3))
print("随机整数:",a2)
#随机数组
a3=np.random.rand(6)
print(a3)
a4=np.random.rand(2,4)
print(a4)

3.数组变换

##数组重塑
#数组维度
z=np.arange(8)
print(z)
z1=z.reshape(4,2)
print(z1)

#数据散开即横
z2=z.reshape(4,2)
print(z2.ravel())

#扁平化
z3=z.reshape(2,4)
print(z3.flatten())

#数组横向合并(注意)***
z4=np.arange(6).reshape(3,2)
print(z4)
z44=z4*2
z444=np.hstack((z4,z44))
print(z444)

#纵向合并***
z5=np.arange(6).reshape(3,2)
print(z5)
z55=z5*2
z555=np.vstack((z5,z55))
print(z555)

4.数组切片

 

#一维数组的索引
q1=np.arange(10)
print(q1)
print(q1[3])
print(q1[-1])
print(q1[2:6])

#多维数组
q2=np.arange(12).reshape(4,3)
print(q2)
print(q2[0,1:3])   #0行的第一列到第2列
print(q2[:,2])   #第二列元素
print(q2[:1,:1])   #0行0列

5.数组运算

##数组运算****
x=np.array([1,2,3])
y=np.array([6,7,8])
print("加:",x+y)
print("减:",x-y)
print("乘:",x*y)
print("幂:",x**y)
print("除:",x/y)

#数组比较运算
x1=np.array([1,2,3])
y1=np.array([6,7,8])
print("<:",x<y)
print(">:",x>y)

 

6. 数据统计和分析

#排序
w=np.array([4,6,22,66,8,9])
print(w)
w.sort()
print(w)

w1=np.array([[3,2,1,66],[77,6,5,98]])
print("原数组",w1)
w1.sort(axis=1)
print("横向排序:",w1)
w1.sort(axis=0)
print("纵向排序:",w1)

#去重
name=np.array(['小红','小明','小红','小李','小米'])
print("原数组",name)
print("去重:",np.unique(name))

#数据重复
n=np.arange(6)
print("原数组:",n)
n1=np.tile(n,2)  #2代表次数
print(n1)

n2=np.array([[1,2,3],[7,89,99]])
print(n2.repeat(2,axis=0))

n3=np.array([[1,2,3],[7,89,99]])
print(n3.repeat(2,axis=1))

7.统计函数

 

#统计函数
m=np.arange(30).reshape(5,6)
print("创建:",m)
print("和:",np.sum(m))
print("横轴和:",np.sum(m,axis=1))
print("纵轴和:",np.sum(m,axis=0))

print("均值:",np.mean(m))
print("横轴和:",np.mean(m,axis=1))
print("纵轴和:",np.mean(m,axis=0))

print("标准差:",np.std(m))
print("横轴和:",np.std(m,axis=1))
print("纵轴和:",np.std(m,axis=0))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值