numpy的基本用法(一)数组的创建,改维和计算

本篇文章主要介绍了用numpy生成数组,计算、改变数组维数和数组的计算方法,如下:

1、numpy生成数组

import numpy as np
t1=np.arange(12)
print(t1)
print(t1.shape)###(12,)说明是该数组是一维,shape是计算数组维数

t2=np.array([[1,2,3],[4,5,6]])
print(t2.shape)###(2,3)说明该数组是二维

t3=np.array([[[1,2,3],[4,5,6]],[[7,8,9],[10,11,12]]])
print(t3.shape)###(2,2,3)说明该数组是三维

ps:np.arange()是numpy独有的生成数组的方法,后续生成数组都用这种简便方法。

2、shape、reshape、flatten的用法

用法:对象.shape-------用来观看数组的维数

          对象.reshape()-----用来调整数组的维数,()里面需要输入参数

          对象.flatten()-------返回一个折叠成一维的数组,()不需要输入参数

t4=np.arange(12)
print(t4)
t4.reshape(3,4)###reshape改变数组为3行4列

t5=np.arange(24).reshape((2,3,4))
print(t5)##生成2个3行4列的数组
t5.reshape((4,6))
t5=t5.reshape((4,6))
print(t5)

t5.reshape((24,1))##生成24行1列
t5.reshape((1,24))##生成1行24列·
t6=t5.reshape((t5.shape[0]*t5.shape[1],))###shape(0)是行数,shape(1)是列数
print(t6)

t5.flatten()###flatten不需要输入参数

3、数组的计算

第一部分:数组和数的计算,比较简单,是对于数组的每一个元素和数字的计算

###数组的计算
print(t5)
t5+2###数组每个数都加2
t5/2###数组每个数都除以2
t5/0###数组每个数除0,不能运行

第二部分:数组和数组的计算,由于数组维数大不相同,所以分为三种情况

  1. 两个数组的维数完全相同,则对应元素进行计算。
  2. 两个数组只有某一维相同,则维数少的数组的某一维的元素分别加到另一个维数多数组对应位置,不只加一次。
  3. 两个数组维数都不相同时,不能计算。
    ###两个想同维度的数组计算,对应位置元素进行计算
    # t6=np.arange(100,124).reshape((4,6))                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      ··45333333333333333·
    t6*t5##对应元素相乘
    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ###两个不同维度的数组计算
    ##某个数组的行或列维度和另个数组维数一样,则某个行列数大的每行或者每列增加或减少行数或列数相同的数组的每个元素(维度至少有一个相同)
    t7=np.arange(0,6)
    print(t7)
    t5-t7###t5每一行减去t7的各个元素
    
    t5*t7###t5的每一行乘t7的各个元素
    ##行列数没有一个相同的两个数组则不能计算(维度没有一个相同)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值