python 实现矩阵填充0的例子


Posted in Python onNovember 29, 2019

需求:

原矩阵

[[1 2 3]
 [4 5 6]
 [7 8 9]]

在原矩阵元素之间填充元素 0,得到

[[1. 0. 2. 0. 3.]
 [0. 0. 0. 0. 0.]
 [4. 0. 5. 0. 6.]
 [0. 0. 0. 0. 0.]
 [7. 0. 8. 0. 9.]]

思路:

先求出扩充矩阵的维度,再按照每一行每一列遍历,根据元素的索引规律依次赋值,最终实现新的扩充矩阵。这个思路实现如下:

import numpy as np

def PadMat(Ndim, Mat):
 Brow = Bcol = 2*Ndim-1
 B = np.zeros([Brow, Bcol])
 for row in range(Brow):
 if row%2 == 0:
 for col in range(Bcol):
 if col%2 == 0:
 pos_c = int(col/2)
 pos_r = int(row/2)
 # print(row, col)
 B[row, col] = Mat[pos_r, pos_c]
 else:
 B[row, col] = 0
 return B


# A = np.arange(9) + 1
# A = A.reshape([3, 3])
A = np.arange(16) + 1
A = A.reshape([4, 4])
# print(A.shape[0])
N = Arow = Acol = A.shape[0]

NewMat = PadMat(Ndim=N, Mat=A)
print(A)
print(NewMat)

总结:

这个思路很直接,但是循环套循环是一个很笨的办法,而且遍历也很慢。不知道网友有什么好的思路吗?

以上这篇python 实现矩阵填充0的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现从百度API获取天气的方法
Mar 11 Python
玩转python selenium鼠标键盘操作(ActionChains)
Apr 12 Python
python使用mysql数据库示例代码
May 21 Python
python中如何正确使用正则表达式的详细模式(Verbose mode expression)
Nov 08 Python
numpy中索引和切片详解
Dec 15 Python
使用Python的Dataframe取两列时间值相差一年的所有行方法
Jul 10 Python
3个用于数据科学的顶级Python库
Sep 29 Python
python微元法计算函数曲线长度的方法
Nov 08 Python
使用Python将Mysql的查询数据导出到文件的方法
Feb 25 Python
python将时分秒转换成秒的实例
Dec 07 Python
详解KMP算法以及python如何实现
Sep 18 Python
python实现scrapy爬虫每天定时抓取数据的示例代码
Jan 27 Python
python循环嵌套的多种使用方法解析
Nov 29 #Python
python写一个随机点名软件的实例
Nov 28 #Python
关于Python-faker的函数效果一览
Nov 28 #Python
python 监测内存和cpu的使用率实例
Nov 28 #Python
python随机生成库faker库api实例详解
Nov 28 #Python
python的faker库用法
Nov 28 #Python
关于python中plt.hist参数的使用详解
Nov 28 #Python
You might like
PHP如何抛出异常处理错误
2011/03/02 PHP
php对二维数组按指定键值key排序示例代码
2013/11/26 PHP
windows的文件系统机制引发的PHP路径爆破问题分析
2014/07/28 PHP
php中heredoc与nowdoc介绍
2014/12/25 PHP
基于PHP实现通过照片获取ip地址
2016/04/26 PHP
php 计算两个时间相差的天数、小时数、分钟数、秒数详解及实例代码
2016/11/09 PHP
laravel添加前台跳转成功页面示例
2019/10/22 PHP
Thinkphp 框架扩展之Widget扩展实现方法分析
2020/04/23 PHP
jQuery制作仿腾讯web qq用户体验桌面
2013/08/20 Javascript
js实现网页倒计时、网站已运行时间功能的代码3例
2014/04/14 Javascript
详解Webwork中Action 调用的方法
2016/02/02 Javascript
详谈javascript异步编程
2016/02/21 Javascript
Node.js 应用跑得更快 10 个技巧
2016/04/03 Javascript
javascript 动态样式添加的简单实现
2016/10/11 Javascript
浅析script标签中的defer与async属性
2016/11/30 Javascript
微信小程序 图片绝对定位(背景图片)
2017/04/05 Javascript
Angular之toDoList的实现代码示例
2017/12/02 Javascript
微信小程序tabBar 返回tabBar不刷新页面
2019/07/25 Javascript
原生JavaScript实现轮播图
2021/01/10 Javascript
[05:59]带你看看DPC的台前幕后
2021/03/11 DOTA
DJANGO-ALLAUTH社交用户系统的安装配置
2014/11/18 Python
Python编码类型转换方法详解
2016/07/01 Python
django 2.0更新的10条注意事项总结
2018/01/05 Python
python+pyqt5实现24点小游戏
2019/01/24 Python
python实现月食效果实例代码
2019/06/18 Python
Python3将数据保存为txt文件的方法
2019/09/12 Python
python tkinter组件摆放方式详解
2019/09/16 Python
tensorflow没有output结点,存储成pb文件的例子
2020/01/04 Python
Python脚本导出为exe程序的方法
2020/03/25 Python
HTML5在IE10、火狐下中文乱码问题的解决方法
2013/11/18 HTML / CSS
美国最古老的精致书写工具制造商:A.T. Cross(高仕)
2018/01/30 全球购物
FILA德国官方网站:来自意大利的体育和街头服饰品牌
2019/07/19 全球购物
美国乒乓球设备、配件和服装品牌:Killerspin
2020/06/07 全球购物
法学专业毕业生自荐信
2014/06/11 职场文书
国家机关领导干部民主生活会对照检查材料思想汇报
2014/09/17 职场文书
研究生导师推荐信
2015/03/25 职场文书