numpy拼接矩阵的实现
1、文档
使用numpy的 concatenate 拼接矩阵,文档里面这样解释:
numpy.concatenate((a1, a2, ...), axis=0, out=None, dtype=None, casting="same_kind")
(a1, a2, ...):连接的数组必须有一样的维度;
axis:拼接的方向;
out:预设输出矩阵的大小
…………
2、举例
首先给定两个矩阵:
rotation = np.array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
trans = np.array([[7],
[8],
[0]])
①:在第一个矩阵后面加上第二个矩阵(加一列):
z = np.concatenate((rotation, trans), axis=1)
输出为:
[[1 2 3 7]
[4 5 6 8]
[7 8 9 0]]
②:以及在矩阵下面加一个全零行:
add_arr = np.array([[0, 0, 0, 0]]) array_by_add = np.concatenate((z, add_arr), axis=0)
输出:
[[1 2 3 7]
[4 5 6 8]
[7 8 9 0]
[0 0 0 0]]
③:把矩阵填充为对角矩阵:
第一个为3×3矩阵,第二个为2×3矩阵。
arr1 = np.array([[2, 3, 4],
[3, 4, 5],
[4, 5, 6]])
arr2 = np.array([[7, 8, 9],
[8, 9, 10]])
arr_zeros1 = np.zeros((arr2.shape[1], arr1.shape[0]))
print(arr_zeros1)
arr_zeros2 = np.zeros((arr2.shape[0], arr1.shape[1]))
print(arr_zeros2)
total_arr1 = np.concatenate((arr1, arr_zeros1), axis=1)
total_arr2 = np.concatenate((arr_zeros2, arr2,), axis=1)
total_arr = np.concatenate((total_arr1, total_arr2), axis=0)
print(total_arr)
拼接之后结果如下:
[5 6]
[[0. 0. 0.]
[0. 0. 0.]
[0. 0. 0.]]
[[0. 0. 0.]
[0. 0. 0.]]
[[ 2. 3. 4. 0. 0. 0.]
[ 3. 4. 5. 0. 0. 0.]
[ 4. 5. 6. 0. 0. 0.]
[ 0. 0. 0. 7. 8. 9.]
[ 0. 0. 0. 8. 9. 10.]]
官方文档地址:numpy官网地址
到此这篇关于numpy拼接矩阵的实现的文章就介绍到这了,更多相关numpy 拼接矩阵内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
pip/anaconda修改镜像源,加快python模块安装速度的操作
这篇文章主要介绍了pip/anaconda修改镜像源,加快python模块安装速度的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2021-03-03
解决pandas报错'DataFrame' object has no
这篇文章主要介绍了解决pandas报错'DataFrame' object has no attribute 'as_matrix'问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2023-08-08
Jupyter notebook 输出部分显示不全的解决方案
这篇文章主要介绍了Jupyter notebook 输出部分显示不全的解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2021-04-04
使用相同的Apache实例来运行Django和Media文件
这篇文章主要介绍了使用相同的Apache实例来运行Django和Media文件,Django是最具人气的Python web开发框架,需要的朋友可以参考下2015-07-07
python中pygame针对游戏窗口的显示方法实例分析(附源码)
这篇文章主要介绍了python中pygame针对游戏窗口的显示方法,以完整实例形式较为详细的分析了pygame响应键盘按键改变窗口显示效果的相关实现技巧,需要的朋友可以参考下2015-11-11


最新评论