返回顶部
首页 > 资讯 > 后端开发 > Python >python的矩阵扩充
  • 804
分享到

python的矩阵扩充

矩阵python 2023-01-31 06:01:27 804人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

a为3*4的矩阵,b为2*4的矩阵,现要形成[ab\frac{a}{b}]一样的矩阵,就需要扩充a 法一: import numpy as np a=np.row_stack( (a , b) ) 法二:


a为3*4的矩阵,b为2*4的矩阵,现要形成[ab]一样的矩阵,就需要扩充a
法一:

    import numpy as np
    a=np.row_stack( (a , b) )

法二:

    c=np.zeros( (5 , 4) )
    for i in range(5):
        if i<3:
            c[i]=a[i]
        else :
            c[i]=b[i-3]

如果只是扩充这么一次,肯定选择法1
但是如果是要扩充多次,即a,b扩充之后还要进行多次的扩充,那么法2是个优势选择。
这里举个例子:
training_set是个(imgMatrix,label)的二维元组,imgMatrix是个60000*784的矩阵,label是个784*1的矩阵。imgMatrix的一行为一个img,同一种类的img的label是相同的,imgMatrix中共十个种类。下面程序的目的是从imgMatrix中找出同一种类的img,并分别构成各个种类的矩阵

注释部分采用的法1,循环6000次就需要5.02s,60000次时间更长,不是简单的5.02s*10,我没有继续等待,也不知道具体时间是多少,但等了几分钟都没有结束。
而采用法2(未注释部分),只需要1.02s!!!,是真的快!

     training_set,test_set=mnist_loader()
     print 'data load over'
        #start1=time.clock()
        #nullMatrix=np.mat( training_set[0].shape[1]*[[]] ).T
        #omega=10*[nullMatrix]
        #for k in range(60000):
        #    label=training_set[1][k,0]
        #    omega[label]=np.row_stack( (omega[label] , training_set[0][k]) )
        #end1=time.clock()
        #print end1-start1  

    start2=time.clock()
    count=10*[0]
    for k in range(60000):
        label=training_set[1][k,0]
        count[label]+=1
    omega=10*[0]
    for i in range(10):
        omega[i]=np.zeros( (count[i],784) )
    index=10*[0]
    for k in range(60000):
        label=training_set[1][k,0]
        omega[label][index[label]]=training_set[0][k]
        index[label]=index[label]+1
    end2=time.clock()
    print end2-start2

--结束END--

本文标题: python的矩阵扩充

本文链接: https://lsjlt.com/news/189765.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • python的矩阵扩充
    a为3*4的矩阵,b为2*4的矩阵,现要形成[ab\frac{a}{b}]一样的矩阵,就需要扩充a 法一: import numpy as np a=np.row_stack( (a , b) ) 法二: ...
    99+
    2023-01-31
    矩阵 python
  • Matlab如何实现矩阵复制扩充
    考虑这个问题: 定义一个简单的行向量a 如何复制10行呢?即: 同理,对于一个列向量,如何复制 10 列呢? 关键函数1: repmat( A , m , n ):将向量/矩阵在...
    99+
    2024-04-02
  • 使用Matlab怎么实现矩阵复制扩充
    使用Matlab怎么实现矩阵复制扩充?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。考虑这个问题:定义一个简单的行向量a如何复制10行呢?即:同理,对于一个列向量,如何复制 ...
    99+
    2023-06-15
  • Numpy扩充矩阵维度和删除维度的实现示例
    这篇文章主要介绍了Numpy扩充矩阵维度和删除维度的实现示例,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。在操作矩阵的时候,不同的接口对于矩阵的输入维度要求不同,输入可能为1...
    99+
    2023-06-14
  • python中numpy矩阵的零填充的示例代码
    目录需求:一、再new一个更大的所需要的矩阵大小  二、pad函数 其他想法需求: 对于图像处理中的一些过程,我需要对读取的numpy矩阵进行size的...
    99+
    2024-04-02
  • python 的矩阵用法
    在 Python 中,你可以使用多种方法表示和操作矩阵。下面介绍几种常用的矩阵表示方法和相关的操作: 列表列表(List of Lists)表示法:可以使用嵌套的列表来表示矩阵。每个列表代表矩阵的一行,其中的元素代表对应位置的值。     ...
    99+
    2023-09-15
    python 矩阵 开发语言
  • 详解Numpy扩充矩阵维度(np.expand_dims, np.newaxis)和删除维度(np.squeeze)的方法
    在操作矩阵的时候,不同的接口对于矩阵的输入维度要求不同,输入可能为1-D,2-D,3-D等等。下面介绍一下使用Numpy进行矩阵维度变更的相关方法。主要包括以下几种: 1、np.ne...
    99+
    2024-04-02
  • Python 的矩阵传播机制Broadcasting和矩阵运算
    目录一、Python的矩阵传播机制(Broadcasting)二、下面展示什么是python的传播机制三、利用numpy的内置函数对矩阵进行操作四、定义自己的函数来处理矩阵五、总结一...
    99+
    2024-04-02
  • python创造矩阵
    python的numpy创造矩阵 from numpy import mat import numpy as np data1=mat(zeros((3,3)));               #创建一个3*3的零矩阵,矩阵这里zer...
    99+
    2023-01-31
    矩阵 python
  • Python 生成矩阵
    限定步长,起始数字,然后生成x行,y列的矩阵 >>> def range2rect(x,y,start=0,step=1): ... N=[] ... F=[] ... for i in range(x):   ...
    99+
    2023-01-31
    矩阵 Python
  • Python——生成矩阵
    def makeMatrix(row_num, column_num, start=0.1, step=0): matrix = [] row = [] for i in range(row_num): ...
    99+
    2023-01-31
    矩阵 Python
  • python 打印矩阵
    matrix = [[0,0,0,1,0], [0,0,0,0,0], [0,2,0,0,0], [0,0,0,0,0], [0,0,0,3,0] ] for i in matrix: print ...
    99+
    2023-01-31
    矩阵 python
  • Python生成对角矩阵和对角块矩阵
    文章目录 对角矩阵scipy中的函数numpy.diagflatnumpy.tri 对角块矩阵 对角矩阵 scipy中的函数 在scipy.linalg中,通过tri(N, M=...
    99+
    2023-10-09
    python numpy scipy 对角矩阵 对角块矩阵
  • python中的矩阵运算
    转自:https://www.cnblogs.com/chamie/p/4870078.html 摘自:http://m.blog.csdn.net/blog/taxueguilai1992/46581861 python的numpy库...
    99+
    2023-01-31
    矩阵 python
  • Python numpy生成矩阵、串联矩阵代码分享
    import numpy 生成numpy矩阵的几个相关函数: numpy.array() numpy.zeros() numpy.ones() numpy.eye() 串联生成numpy矩阵的几个相关函...
    99+
    2022-06-04
    矩阵 代码 Python
  • Python实现生成对角矩阵和对角块矩阵
    目录对角矩阵scipy中的函数numpy.diagflatnumpy.tri对角块矩阵对角矩阵 scipy中的函数 在scipy.linalg中,通过tri(N, M=None, k...
    99+
    2023-05-15
    Python生成对角矩阵 Python生成对角块矩阵 Python生成矩阵 Python矩阵
  • Python 如何求矩阵的逆
    我就废话不多说了,大家还是直接看代码吧~ import numpy as np kernel = np.array([1, 1, 1, 2]).reshape((2, 2)) ...
    99+
    2024-04-02
  • python:矩阵的基本运算
    一、Python 矩阵基本运算 引入 numpy 库 import numpy as np python矩阵操作 1)使用 mat 函数创建一个 2X3矩阵 a = np.mat([[1, 2, 3], [4, 5, 6]])  2)使用...
    99+
    2023-09-02
    python 矩阵 numpy
  • python的常见矩阵运算
    python的numpy库提供矩阵运算的功能,因此我们在需要矩阵运算的时候,需要导入numpy的包。 1.numpy的导入和使用 from numpy import *;#导入numpy的库函数 import numpy as n...
    99+
    2023-01-31
    矩阵 常见 python
  • Python中的Numpy矩阵运算
    目录在学习线性代数时我们所接触的矩阵之间的乘法是矩阵的叉乘,有这样一个前提: 若矩阵A是m*n阶的,B是p*q阶的矩阵,AB能相乘,首先得满足:n=p,即A的列数要等于B的行数。运算...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作