流水账第五章

Numpy的运算

#数组与数的运算
import numpy as np

arr = np.array([[1,2,1,4,5,1],
                 [5,1,7,3,6,2]])
arr_sum = arr + 1 #所以元素相加减乘除
print(arr)
print(arr_sum)

#列表运算
a = [1,2,3,4,5]
#a_sum = a + 1  会报错
a_mult = a * 10 #个数相乘
print(a_mult)

#广播机制:为了计算不用形状的ndarry。满足1)维度相等。 2)shape(其中一个相对应的地方为1)
#比如形状为:(2,5)与(2,1)  (3,5,1)与(3,1,6)  (3,2,1)与(9)  (3,2,1)与(1,4)都可以运算
#例如:(2,5) + (2,1)
arr1 = np.array([[2,5,1,5,7],
         [5,5,1,2,8]])
arr2 = np.array([[1],
         [2]])
arr1_2_sum = arr1 + arr2 #对应加减乘除
arr1_2_mult = arr1 * arr2
print('sum12=',arr1_2_sum)
print('mult12=',arr1_2_mult)

#矩阵运算
score_mat = np.mat([[90,80],
                    [76,34],
                    [54,75],
                    [45,86],
                    [98,89]])
rat_mat = np.mat([[0.3],
                  [0.7]])
total_score = np.matmul(score_mat,rat_mat)  #做矩阵乘运算
#等价于np.dot(score_mat,rat_mat)
#等价于score_mat * rat_mat  #如果是np.arry二维数组则不满足广播机制 无法运算
#等价于score_mat @ rat_mat
print(total_score)

#合并拼接
#横拼接
a = np.array([1,2,3])
b = np.array([4,5,6])
c = np.hstack([a,b])    #横拼接

a1 = np.array([[1],
              [2],
              [3]])
b1 = np.array([[4],
               [5],
               [6]])
d = np.hstack([a1,b1])     #横拼接
print(c)
print(d)

#竖拼接
c1 = np.vstack([a,b])     #竖拼接
d1 = np.vstack([a1,b1])   #竖拼接
print(c1)
print(d1)

#横竖合并法 横拼接:axis = 0 竖拼接:axis = 1
c2 = np.concatenate((a,b), axis = 0)
d2= np.concatenate((a1,b1), axis = 1)
print(c2)
print(d2)

#分割 np.split 不常用

坚持就是胜利 ,加油奥力给💪

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值