numpy 的array 用于矩阵运算 与 python的列表表示矩阵的区别

import numpy as np
X= np.array([[1, 11],
 [2, 22],
 [3, 33],
 [4, 44],
 [5 ,55]]) #numpy.array
batch= [1,2,3]
X_batch = X[batch,:]#该语法就是指定行batch的所有列值
print("batch=",batch,"X_batch=",X_batch)#array输出的print的数组不带有逗号而列表print输出的结果无论是区分列表的元素用逗号,列表的列表中的元素也即是所谓的列也是用逗号分隔

m= [[2, 22],[ 3, 33],[ 4, 44]]#list

print (m==X_batch) #逐个元素比较


print ("type(X_batch)",type(X_batch))
print ("type(m)",type(m))
print ("(m)",m)


R = X_batch+m  #numpy.ndarray表示的矩阵与列表表示的矩阵可以相加
print(R)
 

输出:

batch= [1, 2, 3] X_batch= [[ 2 22]
 [ 3 33]
 [ 4 44]]
[[ True  True]
 [ True  True]
 [ True  True]]
type(X_batch) <class 'numpy.ndarray'>
type(m) <class 'list'>
(m) [[2, 22], [3, 33], [4, 44]]
[[ 4 44]
 [ 6 66]
 [ 8 88]]

 


 

详解:

X_batch = X[batch,:]

该语法就是指定行batch的所有列值

可以通用2个矩阵加法  2个矩阵比较

区别点暂时没有看出有什么差异,只是print打印输出时的nummpy.ndarray的类型数据中无逗号,而python原生的list中会有逗号

矩阵取值比较灵活,类似点穴

比如下面的这2个

   X_batch = X[batch,:]   #取矩阵(多维数组)指定行的所有元素,其中batch为列表
    y_batch = y[batch]    #取一位数组指定下标的元素,其中batch为列表

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值