print(X.shape):查看矩阵的行列号

print(len(X)):查看矩阵的行数

print(X.ndim):查看矩阵的维数

1 查看矩阵的行列号

2 查看矩阵的行数

3 查看矩阵的维数

补充知识:Python之numpy模块的添加及矩阵乘法的维数问题

在Python中,numpy 模块是需要自己安装的,在安装编程软件时,默认安装了pip,因此我们可以用pip命令来安装

numpy模块。

首先打开电脑的“cmd.exe”,如下图所示:

在这里输入“pip install 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/(1+np.exp(-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查看矩阵的行列号以及维数方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

时间: 2020-05-20

python输出矩阵的行数_python查看矩阵的行列号以及维数方式相关推荐

  1. python矩阵行数_python查看矩阵的行列号以及维数方式

    print(X.shape):查看矩阵的行列号 print(len(X)):查看矩阵的行数 print(X.ndim):查看矩阵的维数 1 查看矩阵的行列号 2 查看矩阵的行数 3 查看矩阵的维数 补 ...

  2. 矩阵化为行最简形矩阵计算器_[内附完整源码和文档] 基于C++的小型特殊计算器...

    1.设计内容 实现一个特殊的计算器,可以实现复数.有理数.矩阵和集合的特殊计算.程序可以实现复数.有理数的加.减.乘.除,可以实现矩阵的加法.减法和乘法运算,也可以实现集合的求交集.并集.子集的运算. ...

  3. C语言试题二十七之请编写程序,实现矩阵(3行3列)的转置(即行列互换)。

    1. 题目 请编写一个函数function(int array[3][3]),实现矩阵(3行3列)的转置(即行列互换). 2 .温馨提示 C语言试题汇总里可用于计算机二级C语言笔试.机试.研究生复试中 ...

  4. 行阶梯型矩阵,行最简形矩阵,标准形矩阵

    行阶梯形矩阵: 行最简形矩阵: 标准形矩阵:

  5. 行列向量的维数和个数的关系【三秩相等作为桥梁】

    前置知识 1.列向量组维数增加时,向量组的极大无关组增加(或不变). 2. 三秩相等 向量组证明 直观证明 这两个列向量显然是相关的. 这两个列向量当a和b取k和2k的时候相关(k为任意常数),当不是 ...

  6. python输出九九乘法表儿歌_python学习:输出九九乘法表

    输出九九乘法表 代码: num1 = 1 while num1 <= 9: num2 = 1 while num2 <= num1: print(str(num2)+"*&quo ...

  7. 【Python】实现M行N列的矩阵转置

    M行N列矩阵的转置 说明 解决方法 1. 预定义一个存放矩阵a[M][N]的转置矩阵b[N][M] 2. 使用 列表生成式 进行矩阵的转换: 3. 使用 zip()函数,map()函数,解包 的组合来 ...

  8. python输出素数5个一排_python如何输出质数

    质数(Prime number),又称素数,指在大于1的自然数中,除了1和该数自身外,无法被其他自然数整除的数(也可定义为只有1与该数本身两个因数的数). 简单来说就是,只能除以1和自身的数(需要大于 ...

  9. python输出第几行第几个_python怎么PRINT出第几行

    2013-10-16 回答 def char_ok_but_show_messy(): """ demo python already got normal chines ...

最新文章

  1. Oracle数据库——数据库安全性管理
  2. java的lr词法编译器_Sample语言编译器(词法分析、正规式、LL、LR、 算符优先)...
  3. Oracle数据库设计要做到五戒
  4. 【用word快速输入公式】希腊字母名称和大小写
  5. MTK 驱动开发(39)--低功耗分析工具
  6. python编写图像识别_python实现识别相似图片小结
  7. js 对一个字段去重_js正则去重及(?=)的匹配规则
  8. vue2.0路由(跳转和传参)经典介绍
  9. 前端避免XSS(跨站脚本攻击)
  10. 《数学之美》阅读笔记(持续更新……)
  11. C语言实例——荷兰国旗问题
  12. Windows下使用C++(Win32SDK)编程无需提权读取硬盘序列号(XP、Win7和Win10都可用)
  13. 统一软件开发过程(RUP)的概念和方法
  14. 【U盘量产】你的U盘坏了吗
  15. war3 魔兽争霸3 双开 多开 联机 补丁 工具
  16. python 序列去重并保持原始顺序
  17. Rollup-前端模块化打包工具入门
  18. 组件分享之后端组件——基于Golang语言的游戏服务器框架leaf
  19. 嵌入层(Embedding Layer)与词向量(Word Embedding)详解
  20. jQuery_02 快速入门 $作用和方法

热门文章

  1. 华为:数字化转型实践案例经验分享
  2. 程序员懂算法玩“淮安掼蛋”是否更有优势?
  3. 我一定要找到它FreeEIM
  4. 新三国 雷人台词----雷死一群程序员
  5. 程序员——[小鸟语录]
  6. 如何用10万资金炒房到1000万
  7. 极简 响应式 html5,HTML5----响应式(自适应)网页设计
  8. adjacent angle_GRE/GMAT 数学之平面几何
  9. virsh命令 查看虚拟机镜像_kvm虚拟机操作相关命令及虚拟机和镜像密码修改
  10. 饶毅教授对非升即走的思考