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.pswp.cn/news/277456.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/277456.shtml
英文地址,請注明出處:http://en.pswp.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;…