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


Posted in Python onMay 22, 2020

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

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

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

1 查看矩阵的行列号

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

2 查看矩阵的行数

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

3 查看矩阵的维数

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

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

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

numpy模块。

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

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

在这里输入“pip install numpy”,然后按回车键来安装numpy模块,安装过程如下图所示:

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

我这里是第二次安装,如果是第一次安装,会显示安装过程的进度条,在图中可以看出 “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)

报错如图所示:

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

这里的第三十行就是上述代码中的“l1=nonlin(np.dot(l0,syn0))”,这里提示(4,)与(9,1)不对齐,然后打印一下矩阵l0和syn0

的维数,即将命令“print(l0.shape)”和“print(syn0.shape)”放在“l1=nonlin(np.dot(l0,syn0))”的前一行,如下图所示:

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

发现矩阵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查看矩阵的行列号以及维数方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
分析Python的Django框架的运行方式及处理流程
Apr 08 Python
使用Python的Twisted框架编写简单的网络客户端
Apr 16 Python
对Python中range()函数和list的比较
Apr 19 Python
python修改txt文件中的某一项方法
Dec 29 Python
用Python解决x的n次方问题
Feb 08 Python
图文详解python安装Scrapy框架步骤
May 20 Python
bluepy 一款python封装的BLE利器简单介绍
Jun 25 Python
关于PyTorch源码解读之torchvision.models
Aug 17 Python
Django Serializer HiddenField隐藏字段实例
Mar 31 Python
详解使用python3.7配置开发钉钉群自定义机器人(2020年新版攻略)
Apr 01 Python
用python对excel查重
Dec 07 Python
Python非单向递归函数如何返回全部结果
Dec 18 Python
30行Python代码实现高分辨率图像导航的方法
May 22 #Python
Python3 Tensorlfow:增加或者减小矩阵维度的实现
May 22 #Python
Python pandas如何向excel添加数据
May 22 #Python
python3.8.1+selenium实现登录滑块验证功能
May 22 #Python
在TensorFlow中实现矩阵维度扩展
May 22 #Python
Python多个装饰器的调用顺序实例解析
May 22 #Python
基于Python第三方插件实现西游记章节标注汉语拼音的方法
May 22 #Python
You might like
PHP+MYSQL的文章管理系统(二)
2006/10/09 PHP
解析php中static,const与define的使用区别
2013/06/18 PHP
php的$_FILES的临时储存文件与回收机制实测过程
2013/07/12 PHP
curl 出现错误的调试方法(必看)
2017/02/13 PHP
laravel Validator ajax返回错误信息的方法
2019/09/29 PHP
javascript innerText和innerHtml应用
2010/01/28 Javascript
什么是DOM(Document Object Model)文档对象模型
2012/03/05 Javascript
jQuery.Validate验证库的使用介绍
2013/04/26 Javascript
JavaScript如何自定义trim方法
2015/07/28 Javascript
Angular ui.bootstrap.pagination分页
2017/01/20 Javascript
微信小程序之选项卡的实现方法
2017/09/29 Javascript
vue导出html、word和pdf的实现代码
2018/07/31 Javascript
JavaScript设计模式之模板方法模式原理与用法示例
2018/08/07 Javascript
angular2 ng2-file-upload上传示例代码
2018/08/23 Javascript
Node.js EventEmmitter事件监听器用法实例分析
2019/01/07 Javascript
ES6入门教程之let、const的使用方法
2019/04/13 Javascript
vue在App.vue文件中监听路由变化刷新页面操作
2020/08/14 Javascript
Vue使用CDN引用项目组件,减少项目体积的步骤
2020/10/30 Javascript
vue 全局封装loading加载教程(全局监听)
2020/11/05 Javascript
vue element实现表格合并行数据
2020/11/30 Vue.js
[01:03:41]DOTA2-DPC中国联赛 正赛 Dynasty vs XG BO3 第三场 2月2日
2021/03/11 DOTA
Python3实现从指定路径查找文件的方法
2015/05/22 Python
Python单例模式的两种实现方法
2017/08/14 Python
python模块导入的细节详解
2018/12/10 Python
PyQt4编程之让状态栏显示信息的方法
2019/06/18 Python
Python可变参数会自动填充前面的默认同名参数实例
2019/11/18 Python
python 的numpy库中的mean()函数用法介绍
2020/03/03 Python
将世界上最美丽的摄影作品转化为艺术作品:Photos.com
2017/11/28 全球购物
即时搜索数百万张门票:SeatsForEveryone.com
2018/08/26 全球购物
Street One瑞士:德国现代时装公司
2019/10/09 全球购物
会计顶岗实习心得
2014/01/25 职场文书
旅游安全协议书
2014/04/21 职场文书
裁员通知
2015/04/25 职场文书
圆明园观后感
2015/06/03 职场文书
开业典礼致辞
2015/07/29 职场文书
vue Element-ui表格实现树形结构表格
2021/06/07 Vue.js