python三维、四维数组相乘
2016-12-22 17:27
387 查看
没找到规则,只能通过具体例子理解,有知道具体规则的望不吝赐教。
例1,三维数组相乘
则三维矩阵a、b的两页分别是:
a(:,:,0)=(3568),a(:,:,1)=(2752)
b(:,:,0)=(3926),b(:,:,1)=(7180)
则c=a*b为a、b的两页分别相乘(注意:这里是点乘),得结果为
c(:,:,0)=(9451248),c(:,:,1)=(147400)
可看出c的维数为(2,2,2)。
例2,四维数组相乘
自定义称第四维为张,则四维矩阵a、b对应的不同张、页分别是:
a(:,:,0,0)=(0386),a(:,:,0,1)=(5417)
a(:,:,1,0)=(9527),a(:,:,1,1)=(2309)
b(:,0,0,0)=(32),b(:,0,0,1)=(94)
将a的每张每页与b的每张每页对应相乘(注意:这里仍是点乘),b在由两行一列补成了两行两列进行相乘。
c(:,:,0,0)=(062412),c(:,:,0,1)=(4516928)
c(:,:,1,0)=(2710614),c(:,:,1,1)=(1812036)
c的维度为(2,2,2,2)。
例1,三维数组相乘
import numpy as np a=np.zeros((2,2,2)) a[:,:,0]=([[3,6],[5,8]]) a[:,:,1]=([[2,5],[7,2]]) b=np.zeros((2,2,2)) b[:,:,0]=([[3,2],[9,6]]) b[:,:,1]=([[7,8],[1,0]]) c=a*b
则三维矩阵a、b的两页分别是:
a(:,:,0)=(3568),a(:,:,1)=(2752)
b(:,:,0)=(3926),b(:,:,1)=(7180)
则c=a*b为a、b的两页分别相乘(注意:这里是点乘),得结果为
c(:,:,0)=(9451248),c(:,:,1)=(147400)
可看出c的维数为(2,2,2)。
例2,四维数组相乘
import numpy as np a=np.zeros((2,2,2,2)) a[:,:,0,0]=([[0,8],[3,6]]) a[:,:,0,1]=([[5,1],[4,7]]) a[:,:,1,0]=([[9,2],[5,7]]) a[:,:,1,1]=([[2,0],[3,9]]) b=np.zeros((2,1,1,2)) b[:,0,0,0]=([3,2]) b[:,0,0,1]=([9,4]) c=a*b
自定义称第四维为张,则四维矩阵a、b对应的不同张、页分别是:
a(:,:,0,0)=(0386),a(:,:,0,1)=(5417)
a(:,:,1,0)=(9527),a(:,:,1,1)=(2309)
b(:,0,0,0)=(32),b(:,0,0,1)=(94)
将a的每张每页与b的每张每页对应相乘(注意:这里仍是点乘),b在由两行一列补成了两行两列进行相乘。
c(:,:,0,0)=(062412),c(:,:,0,1)=(4516928)
c(:,:,1,0)=(2710614),c(:,:,1,1)=(1812036)
c的维度为(2,2,2,2)。
相关文章推荐
- Python三维数组
- python 构造三维全零数组
- Python list嵌套 三维数组
- Python Matplotlib实现三维/四维数据的柱状图绘制
- new创建 一维数组、二维数组、三维数组、四维数组...
- python三维数组变一维数组的原因
- PHP四维数组、三维数组封装遍历
- Python与matlab在存储三维数组上的区别
- Python enumerate遍历数组示例应用
- python 稀疏数组的处理
- c++ 用new申请三维数组
- python数组遍历三种实用方法
- python-数组,序列,字典,列表,序表,元祖(tuple)
- Python 初始化多维数组代码
- 三维数组
- 一个无聊男人的疯狂《数据结构与算法分析-C++描述》学习笔记 用C++/lua/python/bash的四重实现(7)习题2.8 随机数组的三种生成算法
- Python的数组
- 下拉列表三级联动-----三维数组实现
- 数组::矩阵相乘
- Python天天美味(23) - enumerate遍历数组