python查看矩阵的⾏列号以及维数⽅式
print(X.shape):查看矩阵的⾏列号
print(len(X)):查看矩阵的⾏数
print(X.ndim):查看矩阵的维数
1 查看矩阵的⾏列号
2 查看矩阵的⾏数
3 查看矩阵的维数
补充知识:Python之numpy模块的添加及矩阵乘法的维数问题
在Python中,numpy 模块是需要⾃⼰安装的,在安装编程软件时,默认安装了pip,因此我们可以⽤pip命令来安装numpy模块。
⾸先打开电脑的“”,如下图所⽰:
在这⾥输⼊“pip install numpy”,然后按回车键来安装numpy模块,安装过程如下图所⽰:
numpy库运行速度我这⾥是第⼆次安装,如果是第⼀次安装,会显⽰安装过程的进度条,在图中可以看出 “Successfully installed numpy-1.14.5”,即成功的安装了版本为1.14.5的numpy模块。
接下来就可以使⽤numpy模块进⾏编程了。
这⾥来说⼀下使⽤矩阵乘法的问题:在numpy模块中矩阵的乘法⽤dot()函数,但是要注意维数,还有就是要细⼼。
下⾯的代码在执⾏的过程中就报错了:
import numpy as np
def nonlin(x,deriv=False):
if (deriv==True):
return x*(1-x)
return 1/(p(-x))
#input dataset
x=np.array([[0.05, 0.07, 1.26, 51,128983, 37.180962, 149.0759784, 4.368080458, 1.0132, 24.4777],
[0.54, 0.18, 0.34, 30.83226759, 39.7490114, 12.70335148, 5.792655734, 4.66, 1.57],
[0.47, 0.95, 2.01, 38.01532298, 3.080286601, 89.59062789, 5.349154432, 1.05, 0.461],
[0.81, 1.06, 1.3, 77.882162, 59.17737344, 124.9541366, 5.259286248, 0.2105, 1.706]])
#output dataset
y=np.array([[15, 26, 33, 64]]).T
np.random.seed(1)
syn0=2*np.random.random((9,1))-1
for iter in range(10000):
l0=x
l1=nonlin(np.dot(l0,syn0))
l1_error=y-l1
l1_delta=l1_error*nonlin(l1,True)
syn0+=np.dot(l0.T,l1_delta)
print ("Outout after training:")
print (l1)
报错如图所⽰:
这⾥的第三⼗⾏就是上述代码中的“l1=nonlin(np.dot(l0,syn0))”,这⾥提⽰(4,)与(9,1)不对齐,然后打印⼀下矩阵l0和syn0的维数,即将命令“print(l0.shape)”和“print(syn0.shape)”放在“l1=nonlin(np.dot(l0,syn0))”的前⼀⾏,如下图所⽰:
发现矩阵l0和syn0的维数分别为(4,)与(9,1),若矩阵l0为(4,9),矩阵乘法才能计算。这⾥的矩阵l0就是输⼊,即为x。
经过查发现输⼊的第⼀⾏数据中,有⼀个数据错将⼩数点输成逗号所致。将上述代码的输⼊数据:
#input dataset
x=np.array([[0.05, 0.07, 1.26, 51,128983, 37.180962, 149.0759784, 4.368080458, 1.0132, 24.4777],
[0.54, 0.18, 0.34, 30.83226759, 39.7490114, 12.70335148, 5.792655734, 4.66, 1.57],
[0.47, 0.95, 2.01, 38.01532298, 3.080286601, 89.59062789, 5.349154432, 1.05, 0.461],
[0.81, 1.06, 1.3, 77.882162, 59.17737344, 124.9541366, 5.259286248, 0.2105, 1.706]])
改为:
#input dataset
x=np.array([[0.05, 0.07, 1.26, 51.128983, 37.180962, 149.0759784, 4.368080458, 1.0132, 24.4777],
[0.54, 0.18, 0.34, 30.83226759, 39.7490114, 12.70335148, 5.792655734, 4.66, 1.57],
[0.47, 0.95, 2.01, 38.01532298, 3.080286601, 89.59062789, 5.349154432, 1.05, 0.461],
[0.81, 1.06, 1.3, 77.882162, 59.17737344, 124.9541366, 5.259286248, 0.2105, 1.706]])
然后代码执⾏成功。
以上这篇python查看矩阵的⾏列号以及维数⽅式就是⼩编分享给⼤家的全部内容了,希望能给⼤家⼀个参考,也希望⼤家多多⽀持。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论