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实现统计英文单词个数及字符串分割代码
May 28 Python
Python 中 Meta Classes详解
Feb 13 Python
Python数据分析之真实IP请求Pandas详解
Nov 18 Python
Caffe均值文件mean.binaryproto转mean.npy的方法
Jul 09 Python
Python爬虫设置代理IP(图文)
Dec 23 Python
python使用requests模块实现爬取电影天堂最新电影信息
Apr 03 Python
python区分不同数据类型的方法
Oct 14 Python
TensorFLow 不同大小图片的TFrecords存取实例
Jan 20 Python
python+selenium+chrome批量文件下载并自动创建文件夹实例
Apr 27 Python
Tensorflow之MNIST CNN实现并保存、加载模型
Jun 17 Python
tensorflow 动态获取 BatchSzie 的大小实例
Jun 30 Python
Pygame Rect区域位置的使用(图文)
Nov 17 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
各种咖啡的英文名子是什么
2021/03/03 新手入门
PHPMailer邮件发送的实现代码
2013/05/04 PHP
php使用curl实现简单模拟提交表单功能
2017/05/15 PHP
载入进度条 效果
2006/07/08 Javascript
手把手教你自己写一个js表单验证框架的方法
2010/09/14 Javascript
Nodejs使用mysql模块之获得更新和删除影响的行数的方法
2014/03/18 NodeJs
js实现点击图片将图片地址复制到粘贴板的方法
2015/02/16 Javascript
JavaScript之Vue.js【入门基础】
2016/12/06 Javascript
微信小程序 label 组件详解及简单实例
2017/01/10 Javascript
angularJS+requireJS实现controller及directive的按需加载示例
2017/02/20 Javascript
教你快速搭建Node.Js服务器的方法教程
2017/03/30 Javascript
vue.js单页面应用实例的简单实现
2017/04/10 Javascript
详解VUE 定义全局变量的几种实现方式
2017/06/01 Javascript
js 客户端打印html 并且去掉页眉、页脚的实例
2017/11/03 Javascript
利用Javascript实现一套自定义事件机制
2017/12/14 Javascript
Vue2.5通过json文件读取数据的方法
2018/02/27 Javascript
js input输入百分号保存数据库失败的解决方法
2018/05/26 Javascript
js根据后缀判断文件文件类型的代码
2020/05/09 Javascript
three.js 制作动态二维码的示例代码
2020/07/31 Javascript
基于javascript的无缝滚动动画1
2020/08/07 Javascript
python通过自定义isnumber函数判断字符串是否为数字的方法
2015/04/23 Python
python 信息同时输出到控制台与文件的实例讲解
2018/05/11 Python
windows上彻底删除jupyter notebook的实现
2020/04/13 Python
Python中使用socks5设置全局代理的方法示例
2020/04/15 Python
python查找特定名称文件并按序号、文件名分行打印输出的方法
2020/04/24 Python
Saks Fifth Avenue澳洲/亚太地区:萨克斯第五大道精品百货店
2019/06/09 全球购物
2014年师德师风学习材料
2014/05/16 职场文书
房屋买卖授权委托书
2014/09/27 职场文书
公司股份转让协议书范本
2015/01/28 职场文书
天坛导游词
2015/02/02 职场文书
展览会邀请函
2015/02/02 职场文书
2016特色励志班级口号
2015/12/24 职场文书
JS继承最简单的理解方式
2021/03/31 Javascript
Python Numpy之linspace用法说明
2021/04/17 Python
Mybatis-plus在项目中的简单应用
2021/07/01 Java/Android
python接口测试返回数据为字典取值方式
2022/02/12 Python