numpy matrix和array的乘和加实例

1. 对于数组array

就是对应位置的元素相乘:

X1 = np.array([[1,2], [3, 4]])
X2 = X1
print X2*X1
[[ 1 4]
 [ 9 16]]

就是对应位置的相加:

X1 = np.array([[1,2], [3, 4]])
X2 = X1
print X2+X1
[[2 4]
 [6 8]]

2. 对于矩阵matrix

就是矩阵的点乘:

X1 = np.matrix([[1,2], [3, 4]])
X2 = X1
print X2*X1
[[ 7 10]
 [15 22]]

有两种情况,第一种是X1与X2的大小一致,就是普通的矩阵相加,即对应位置相加:

X1 = np.matrix([[1,2], [3, 4]])
X2 = X1
print X2+X1
[[2 4]
 [6 8]]

第二种情况是n*1的X1 + m*1的X2(或者反过来),就会得到n*m的矩阵:

X1 = np.matrix([[1,2,3]])
X2 = np.matrix([[1,2,3,4]]).T
print X2+X1
[[2 3 4]
 [3 4 5]
 [4 5 6]
 [5 6 7]]

3. 混用情况

在numpy中存在很多的matrix和array 运算符混用的情况,程序也能通过,但这样很不好,尽量按照以上原则使用。

如果2维的array想要进行矩阵的点乘运算,可以用np.dot(X1, X2)

如果matrix想要进行对应位置的乘,可以用np.multiply(X2,X1)

以上这篇numpy matrix和array的乘和加实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 基于Python Numpy的数组array和矩阵matrix详解

    NumPy的主要对象是同种元素的多维数组.这是一个所有的元素都是一种类型.通过一个正整数元组索引的元素表格(通常是元素是数字). 在NumPy中维度(dimensions)叫做轴(axes),轴的个数叫做秩(rank,但是和线性代数中的秩不是一样的,在用python求线代中的秩中,我们用numpy包中的linalg.matrix_rank方法计算矩阵的秩,例子如下). 结果是: 线性代数中秩的定义:设在矩阵A中有一个不等于0的r阶子式D,且所有r+1阶子式(如果存在的话)全等于0,那末D称为矩阵

  • Python科学计算包numpy用法实例详解

    本文实例讲述了Python科学计算包numpy用法.分享给大家供大家参考,具体如下: 1 数据结构 numpy使用一种称为ndarray的类似Matlab的矩阵式数据结构管理数据,比python的列表和标准库的array类更为强大,处理数据更为方便. 1.1 数组的生成 在numpy中,生成数组需要指定数据类型,默认是int32,即整数,可以通过dtype参数来指定,一般用到的有int32.bool.float32.uint32.complex,分别代表整数.布尔值.浮点型.无符号整数和复数 一

  • Python中矩阵库Numpy基本操作详解

    NumPy是一个关于矩阵运算的库,熟悉Matlab的都应该清楚,这个库就是让python能够进行矩阵话的操作,而不用去写循环操作. 下面对numpy中的操作进行总结. numpy包含两种基本的数据类型:数组和矩阵. 数组(Arrays) >>> from numpy import * >>> a1=array([1,1,1]) #定义一个数组 >>> a2=array([2,2,2]) >>> a1+a2 #对于元素相加 array(

  • Python numpy 提取矩阵的某一行或某一列的实例

    如下所示: import numpy as np a=np.arange(9).reshape(3,3) a Out[31]: array([[0, 1, 2], [3, 4, 5], [6, 7, 8]]) 矩阵的某一行 a[1] Out[32]: array([3, 4, 5]) 矩阵的某一列 a[:,1] Out[33]: array([1, 4, 7]) b=np.eye(3,3) b Out[36]: array([[ 1., 0., 0.], [ 0., 1., 0.], [ 0.,

  • numpy matrix和array的乘和加实例

    1. 对于数组array 乘 就是对应位置的元素相乘: X1 = np.array([[1,2], [3, 4]]) X2 = X1 print X2*X1 [[ 1 4] [ 9 16]] 加 就是对应位置的相加: X1 = np.array([[1,2], [3, 4]]) X2 = X1 print X2+X1 [[2 4] [6 8]] 2. 对于矩阵matrix 乘 就是矩阵的点乘: X1 = np.matrix([[1,2], [3, 4]]) X2 = X1 print X2*X1

  • numpy找出array中的最大值,最小值实例

    在python中利用numpy创建一个array, 然后我们想获取array的最大值,最小值.可以使用一下方法: 一.创建数组 这样就可以获得一个array的最大值和最小值了. 并且可以利用np.where(np.max(a))来获得最大值,最小值的行和列数. 二.python下对文件的操作 1.移动一个文件夹到另一个文件夹下 首先 import os, skutil 复制文件: shutil.copyfile('oldfile', 'newfile') oldfile和newfile都只能是文

  • Python 获取numpy.array索引值的实例

    举个例子: q=[0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15] 我想获取其中值等于7的那个值的下标,以便于用于其他计算. 如果使用np.where,如: q=np.arange(0,16,1) g=np.where(q==7) print q print g 运行结果是: [ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15] (array([7]),) 显然(array([7]),)中的数字7我是没法提取出来做运算的,这是一个tuple

  • Python过滤掉numpy.array中非nan数据实例

    代码 需要先导入pandas arr的数据类型为一维的np.array import pandas as pd arr[~pd.isnull(arr)] 补充知识:python numpy.mean() axis参数使用方法[sum(axis=*)是求和,mean(axis=*)是求平均值] 如下所示: import numpy as np X = np.array([[1, 2], [4, 5], [7, 8]]) print(np.mean(X, axis=0, keepdims=True)

  • 详谈Python中列表list,元祖tuple和numpy中的array区别

    1.列表 list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个序列的项目.列表中的项目.列表中的项目应该包括在方括号中,这样python就知道你是在指明一个列表.一旦你创建了一个列表,你就可以添加,删除,或者是搜索列表中的项目.由于你可以增加或删除项目,我们说列表是可变的数据类型,即这种类型是可以被改变的,并且列表是可以嵌套的. 列表是可以改变的,能够增加或减少,(append和del函数) 2.元组 元祖和列表十分相似,不过元组是不可变的.即你不能修改元组.元组通过圆括号中用逗号

  • 对numpy中数组元素的统一赋值实例

    Numpy中的数组整体处理赋值操作一直让我有点迷糊,很多时候理解的不深入.今天单独列写相关的知识点,进行总结一下. 先看两个代码片小例子: 例子1: In [2]: arr =np.empty((8,4)) In [3]: arr Out[3]: array([[ 0., 0., 0., 0.], [ 0., 0., 0., 0.], [ 0., 0., 0., 0.], [ 0., 0., 0., 0.], [ 0., 0., 0., 0.], [ 0., 0., 0., 0.], [ 0.,

  • 在python Numpy中求向量和矩阵的范数实例

    np.linalg.norm(求范数):linalg=linear(线性)+algebra(代数),norm则表示范数. 函数参数 x_norm=np.linalg.norm(x, ord=None, axis=None, keepdims=False) ①x: 表示矩阵(也可以是一维) ②ord:范数类型 向量的范数: 矩阵的范数: ord=1:列和的最大值 ord=2:|λE-ATA|=0,求特征值,然后求最大特征值得算术平方根 ord=∞:行和的最大值 ③axis:处理类型 axis=1表

  • python使用numpy读取、保存txt数据的实例

    1.首先生成array数组 import numpy as np a = np.random.rand(5,5) print(a) 结果: array([[0.17374613, 0.87715267, 0.93111376, 0.53415215, 0.59667207], [0.6865835 , 0.15873242, 0.2842251 , 0.73840834, 0.37163279], [0.06556834, 0.68446787, 0.91136611, 0.82796704,

  • Python Numpy数组扩展repeat和tile使用实例解析

    这篇文章主要介绍了Python Numpy数组扩展repeat和tile使用实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 numpy.repeat 官方文档 numpy.repeat(a, repeats, axis=None) Repeat elements of an array. 可以看出repeat函数是操作数组中的每一个元素,进行元素的复制. 例如: >>> a = np.arange(3) >>>

随机推荐