python numpy矩阵索引_python – Numpy中的矩阵索引

索引后查看形状:

In [295]: A=np.matrix([1,2,3])

In [296]: A.shape

Out[296]: (1, 3)

In [297]: A[0]

Out[297]: matrix([[1, 2, 3]])

In [298]: A[0].shape

Out[298]: (1, 3)

这种行为的关键是np.matrix总是2d.所以即使你选择一行(A [0,:]),结果仍然是2d,形状(1,3).因此,您可以根据需要串起尽可能多的[0],并且不会发生任何新的事情.

你想用A [0] [0]完成什么?与A [0,0]相同?

对于基本np.ndarray类,这些是等价的.

请注意,Python解释器将索引转换为__getitem__调用.

A.__getitem__(0).__getitem__(0)

A.__getitem__((0,0))

[0] [0]是2个索引操作,而不是一个.所以第二个[0]的效果取决于第一个产生的效果.

对于数组A [0,0]等价于A [0,:] [0].但对于矩阵,您需要:

In [299]: A[0,:][:,0]

Out[299]: matrix([[1]]) # still 2d

=============================

“An array of itself”, but I doubt anyone in their right mind would choose that as a model for matrices in a scientific library.

What is, then, the logic to the output I obtained? Why would the first element of a matrix object be itself?

In addition, A[0,:] is not the same as A[0]

鉴于这些评论,请允许我提出一些澄清.

A [0]并不意味着“返回第一个元素”.这意味着沿第一轴选择.对于1d数组,表示第1项.对于2d数组,它表示第1行.对于ndarray,它将是一个1d数组,但对于矩阵,它是另一个矩阵.因此对于2d数组或矩阵,A [i,:]与A [i]是相同的.

A [0]不只是返回自己.它返回一个新矩阵.不同的身份:

In [303]: id(A)

Out[303]: 2994367932

In [304]: id(A[0])

Out[304]: 2994532108

它可能具有相同的数据,形状和步幅,但它是一个新对象.它与许多行矩阵的第i行一样独特.

大多数独特的矩阵活动定义在:numpy / matrixlib / defmatrix.py中.我打算建议查看矩阵.__ getitem__方法,但大多数动作都是在np.ndarray .__ getitem__中执行的.

为了方便老派的MATLAB程序员,np.matrix类被添加到numpy中. numpy数组几乎可以有任意数量的维度,0,1,…. MATLAB只允许2,尽管2000左右的版本将其推广到2或更多.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/277456.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Activity的呼叫转移*(3个Activity之间的跳转)

Redirection的意思就是“呼叫转移,重寄”的意思 我们也许会再程序开发中遇到这种情况,需要从一个Activity(A)跳转到另一个Activity(B),当在这个Activity(B)中处理完一些操…

深度解析数据分析、大数据工程师和数据科学家的区别

数据越来越多的影响并塑造着那些我们每天都要交互的系统。不管是你使用Siri,google搜索,还是浏览facebook的好友动态,你都在消费者数据分析的结果。我们赋予了数据如此大的转变的能力,也难怪近几年越来越多的数据相关的角色被创造…

python webservice接口测试传参数_Python3 webservice接口测试方法是什么

Python3 webservice接口测试方法是什么发布时间:2020-06-23 14:07:46来源:亿速云阅读:92作者:清晨不懂Python3 webservice接口测试方法是什么?其实想解决这个问题也不难,下面让小编带着大家一起学习怎么去解…

zabbix4.2 系列(二):agent配置

zabbix-agent: 分为主动模式和被动模式,均在配置文件实现(主动模式和被动模式可同时设置): vim /etc/zabbix/zabbix_agentd.conf Server192.168.18.154 (用于被动模式,允许哪台服务器可以…

java form 对象 一对一_java-双向一对一地“对象引用了一个未保存...

我有一个简单的一对一关系:>为每个实体单独的DAO.>事务由Spring管理.PersonDao personDao ctx.getBean(PersonDao.class, "personDaoImpl");VehicleDao vehicleDao ctx.getBean(VehicleDao.class, "vehicleDaoImpl");Vehicle vehicle …

RabbitMQ 入门教程(PHP版) 第三部分:发布/订阅(Publish/Subscribe)

发布/订阅 在上篇第二部分教程中,我们搭建了一个工作队列。每个任务之分发给一个工作者(worker)。在本篇教程中,我们要做的之前完全不一样——分发一个消息给多个消费者(consumers)。这种模式被…

Proxmox VE 安装、配置、使用之第二章 Proxmox VE 的安全性

第一章 Proxmox VE 的安全性一、 角色及权限图2-1-1二、 Root 的密码安全性把 Root 的实际密码给出去, 在任何系统都是不符合安全规范的!所以在 Linux 里面, 最好把有需要 root 权限的使用者 放到 sudoers 的群组.# sudo usermod -a -G sudo testuserPVE 的权限设定方式 是由 u…

java allocate_Java中volatile关键字的最全总结

一、简介volatile是Java提供的一种轻量级的同步机制。Java 语言包含两种内在的同步机制:同步块(或方法)和 volatile 变量,相比于synchronized(synchronized通常称为重量级锁),volatile更轻量级,因为它不会引起线程上下文的切换和调…

缩放手势 ScaleGestureDetector 源码解析,这一篇就够了

其实在我们日常的编程中,对于缩放手势的使用并不是很经常,这一手势主要是用在图片浏览方面,比如下方例子。但是(敲重点),作为 Android 入门的基础来说,学习 ScaleGestureDetector 的使用&#x…

postgres的数据库备份和恢复

备份和恢复 一条命令就可以解决很简单: 这是备份的命令: pg_dump -h 127/0.0.1 -U postgres databasename > databasename.bak 指令解释: pg_dump 是备份数据库指令,164.82.233.54是数据库的ip地址(必须保证数据库允许外部访…

java 类的执行顺序_Java中类的执行顺序

讲解在代码中:package 类执行顺序;/*** java类执行顺序** 1、如果父类有静态成员赋值或者静态初始化块,执行静态成员赋值和静态初始化块* 2、如果类有静态成员赋值或者静态初始化块,执行静态成员赋值和静态初始化块* 3、将类的成员赋予初值(原…

ZooKeeper相关资料集锦

1、ZooKeeper相关概念总结 https://github.com/Snailclimb/JavaGuide/blob/master/docs/system-design/framework/ZooKeeper.md 2、ZooKeeper在Windows下的安装和配置 https://blog.csdn.net/morning99/article/details/40426133 3、Curator框架应用 http://ifeve.com/zookeepe…

JQuery.Ajax()的data参数传递方式

最近,新学c# mvc,通过ajax post方式传递数据到controller。刚开始传递参数,controller中总是为null。现记录一下,可能不全,纯粹记个学习日记。 重点在于参数的方式,代码为例子 1、这里 dataType: "js…

java如何实现封装_java如何实现封装

Java中类的封装是如何实现的封装是将对象的信息隐藏在对象内部,禁止外部程序直接访问对象内部的属性和方法。 java封装类通过三个步骤实现: (1)修改属性的可见性,限制访问。 (2)设置属性的读取方法。 (3)在读取属性的方法中,添加对…

用了30天整理的一些GO语言学习资料,2019请你加油

因为极其优秀的并发性能,Google的亲儿子Go语言站上了风潮之巅。出现在21世纪的GO语言,虽然不能如愿对C取而代之,但是其近C的执行性能和近解析型语言的开发效率以及近乎于完美的编译速度,已经风靡全球。特别是在云项目中&#xff0…

Kubernetes网络设计原则

在配置集群网络插件或者实践K8S 应用/服务部署请时刻想到这些原则: 1.每个Pod都拥有一个独立IP地址,Pod内所有容器共享一个网络命名空间2.集群内所有Pod都在一个直接连通的扁平网络中,可通过IP直接访问 所有容器之间无需NAT就可以直接互相访问…

php token 验证,PHP如何实现Token验证

PHP如何实现Token验证首先将Token进行解析&#xff1b;然后根据解析出来的信息部分验证是否过期&#xff0c;如果未过期再将解析出的信息部分进行加密&#xff1b;最后将加密出来的数据和解析出来签名进行比对&#xff0c;如果相同则验证成功。示例代码&#xff1a;<?php f…

关于Linux fontconfig 字体库的坑

01、安装字体软件yum -y install fontconfig然后把字体拷过去就行了 cd /usr/share/fonts fc-list 这是查看02、拷贝字体到指定目录 cp simsun.ttc /usr/share/fonts/然后把字体拷过去就行了 cd /usr/share/fonts 03、验证字体安装情况 fc-list //"宋体"中文字体…

满江红.互联网

小小寰球&#xff0c;有多少信息瞬抵。互联网&#xff0c;几多涛生&#xff0c;几多云逸。蚂蚁缘槐近大国&#xff0c;菜鸟搭枝成凤翼。正台风绿叶下临安&#xff0c;何足惧?多少事&#xff0c;从来急&#xff1b;天地转&#xff0c;光阴隙。一百年太久&#xff0c;只争朝夕。…

Python startswith()函数 与 endswith函数

函数&#xff1a;startswith() 作用&#xff1a;判断字符串是否以指定字符或子字符串开头一、函数说明语法&#xff1a;string.startswith(str, beg0,endlen(string)) 或string[beg:end].startswith(str)参数说明&#xff1a;string&#xff1a; 被检测的字符串str&#xff1a;…