首頁 後端開發 Python教學 numpy中的軸與維度

numpy中的軸與維度

Apr 18, 2018 am 11:01 AM
numpy 維度

以下為大家分享一篇對numpy中軸與維度的理解,具有很好的參考價值,希望對大家有幫助。一起來看看吧

NumPy's main object is the homogeneous multidimensional array. It is a table of elements (usually numbers), all of the same type, indexed by a tuple of positive integers. InsionPy. axes. The number of axes is rank.

For example, the coordinates of a point in 3D space [1, 2, 1] is an array of rank 1, because it has one axis. That axis has ahas length of 3. In the example pictured below, the array has rank 2 (it is 2-dimensional). The first dimension (axis) has a length of 2, the second dimension has a length of 3.

[[ 1., 0., 0.],
 [ 0., 1., 2.]]
登入後複製

ndarray.ndim

#陣列軸的數,在python

的世界中,軸的數量被稱為秩

>> X = np.reshape(np.arange(24), (2, 3, 4))
  # 也即 2 行 3 列的 4 个平面(plane)
>> X
array([[[ 0, 1, 2, 3],
    [ 4, 5, 6, 7],
    [ 8, 9, 10, 11]],
    [[12, 13, 14, 15],
    [16, 17, 18, 19],
    [20, 21, 22, 23]]])
登入後複製

shape函數是numpy.core.fromnumeric中的函數,它的功能是讀取矩陣的長度,例如shape[0]就是讀取矩陣第一個維度的長度。 shape(x)

(2,3,4)shape(x )[0]

2

#或x.shape[0]

2

再來分別看每一個平面的構成:

#
>> X[:, :, 0]
array([[ 0, 4, 8],
    [12, 16, 20]])
>> X[:, :, 1]
array([[ 1, 5, 9],
    [13, 17, 21]])
>> X[:, :, 2]
array([[ 2, 6, 10],
    [14, 18, 22]])
>> X[:, :, 3]
array([[ 3, 7, 11],
    [15, 19, 23]])
登入後複製

##也即是對np .arange(24)(0, 1, 2, 3, ..., 23) 進行重新的排列時,在多維數組的多個軸的方向上,先分配最後一個軸(對於二維數組,即先分配行的方向,對於三維數組即先分配平面的方向)

reshpae,是數組物件中的方法,用於改變數組的形狀。

二維陣列

#

#!/usr/bin/env python 
# coding=utf-8 
import numpy as np 
 
a=np.array([1, 2, 3, 4, 5, 6, 7, 8]) 
print a 
d=a.reshape((2,4)) 
print d
登入後複製

##
#!/usr/bin/env python 
# coding=utf-8 
import numpy as np 
 
a=np.array([1, 2, 3, 4, 5, 6, 7, 8]) 
print a 
f=a.reshape((2, 2, 2)) 
print f
登入後複製

三維數組

#!/usr/bin/env python 
# coding=utf-8 
import numpy as np 
 
a=np.array([1, 2, 3, 4, 5, 6, 7, 8]) 
print a 
print a.dtype 
e=a.reshape((2,2)) 
print e
登入後複製

#形狀變化的原則是數組元素不能改變,例如這樣寫就是錯誤的,因為數組元素發生了變化。

#!/usr/bin/env python 
# coding=utf-8 
import numpy as np 
 
a=np.array([1, 2, 3, 4, 5, 6, 7, 8]) 
print a 
e=a.reshape((2, 4)) 
print e 
a[1]=100 
print a 
print e
登入後複製

注意:透過reshape產生的新數組和原始數組公用一個內存,也就是說,假如更改一個數組的元素,另一個數組也會改變。

a=np.arange(0, 60, 10)
>>>a
array([0,10,20,30,40,50])
>>>a.reshape(-1,1)
array([[0],
[10],
[20],
[30],
[40],
[50]])
登入後複製

#Python中reshape函數參數-1的意思

>>> a = np.array([[1,2,3], [4,5,6]])
>>> np.reshape(a, (3,-1)) # the unspecified value is inferred to be 2
array([[1, 2],
    [3, 4],
    [5, 6]])
登入後複製

如果寫成a.reshape(1,1)就會報錯

ValueError:cannot reshape array of size 6 into shape (1,1)


# 下面是两张2*3大小的照片(不知道有几张照片用-1代替),如何把所有二维照片给摊平成一维
>>> image = np.array([[[1,2,3], [4,5,6]], [[1,1,1], [1,1,1]]])
>>> image.shape
(2, 2, 3)
>>> image.reshape((-1, 6))
array([[1, 2, 3, 4, 5, 6],
    [1, 1, 1, 1, 1, 1]])
登入後複製

-1表示我懶得計算該填什麼數字,由python通過a和其他的值3推測出來。


rrreee


相關推薦:

#對numpy中array和asarray的區別

##### #############################

以上是numpy中的軸與維度的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

怎麼更新numpy版本 怎麼更新numpy版本 Nov 28, 2023 pm 05:50 PM

更新numpy版本方法:1、使用「pip install --upgrade numpy」指令;2、使用的是Python 3.x版本,使用「pip3 install --upgrade numpy」指令,將會下載並安裝,覆蓋目前的NumPy版本;3、若使用的是conda來管理Python環境,使用「conda install --update numpy」指令更新即可。

如何快速查看numpy版本 如何快速查看numpy版本 Jan 19, 2024 am 08:23 AM

Numpy是Python中一個重要的數學庫,它提供了高效的數組操作和科學計算函數,被廣泛應用於數據分析、機器學習、深度學習等領域。在使用numpy過程中,我們經常需要查看numpy的版本號,以便確定目前環境所支援的功能。本文將介紹如何快速查看numpy版本,並提供具體的程式碼範例。方法一:使用numpy自帶的__version__屬性numpy模組自帶一個__

numpy版本推薦使用哪個版本 numpy版本推薦使用哪個版本 Nov 22, 2023 pm 04:58 PM

推薦使用最新版本的NumPy1.21.2。原因是:目前,NumPy的最新穩定版本是1.21.2。通常情況下,建議使用最新版本的NumPy,因為它包含了最新的功能和效能優化,並且修復了先前版本中的一些問題和錯誤。

逐步指導如何在PyCharm中安裝NumPy並充分發揮其功能 逐步指導如何在PyCharm中安裝NumPy並充分發揮其功能 Feb 18, 2024 pm 06:38 PM

一步步教你在PyCharm中安裝NumPy並充分利用其強大功能前言:NumPy是Python中用於科學計算的基礎庫之一,提供了高效能的多維數組物件以及對數組執行基本操作所需的各種函數。它是大多數資料科學和機器學習專案的重要組成部分。本文將向大家介紹如何在PyCharm中安裝NumPy,並透過具體的程式碼範例展示其強大的功能。第一步:安裝PyCharm首先,我們

升級numpy版本:詳細易學的指南 升級numpy版本:詳細易學的指南 Feb 25, 2024 pm 11:39 PM

如何升級numpy版本:簡單易懂的教程,需要具體程式碼範例引言:NumPy是一個重要的Python庫,用於科學計算。它提供了一個強大的多維數組物件和一系列與之相關的函數,可用於進行高效的數值運算。隨著新版本的發布,不斷有更新的特性和Bug修復可供我們使用。本文將介紹如何升級已安裝的NumPy函式庫,以取得最新特性並解決已知問題。步驟1:檢查目前NumPy版本在開始

numpy怎麼安裝 numpy怎麼安裝 Dec 01, 2023 pm 02:16 PM

numpy可以透過使用pip、conda、原始碼和Anaconda來安裝。詳細介紹:1、pip,在命令列中輸入pip install numpy即可;2、conda,在命令列中輸入conda install numpy即可;3、源碼,解碼源碼包或進入源碼目錄,在命令行中輸入python setup.py build python setup.py install即可。

numpy版本選擇指南:為什麼要升級? numpy版本選擇指南:為什麼要升級? Jan 19, 2024 am 09:34 AM

隨著資料科學、機器學習和深度學習等領域的快速發展,Python成為了資料分析和建模的主流語言。在Python中,NumPy(NumericalPython的簡稱)是一個很重要的函式庫,因為它提供了一組高效的多維數組對象,也是許多其他函式庫如pandas、SciPy和scikit-learn的基礎。在使用NumPy過程中,很有可能會遇到不同版本之間的相容性問題,那麼

Numpy安裝攻略:一文解決安裝難題 Numpy安裝攻略:一文解決安裝難題 Feb 21, 2024 pm 08:15 PM

Numpy安裝攻略:一文解決安裝難題,需要具體程式碼範例引言:Numpy是Python中一款強大的科學計算庫,它提供了高效的多維數組物件和對數組資料進行操作的工具。但是,對於初學者來說,安裝Numpy可能會帶來一些困擾。本文將為大家提供一份Numpy安裝攻略,幫助大家快速解決安裝難題。一、安裝Python環境:在安裝Numpy之前,首先需要確保已經安裝了Py

See all articles