NumPy-生成ndarray


NumPy ndarray:多維數組對象

NumPy的核心特征之一就是 N-維數組對象——ndarray。

ndarray是Python中的一個快速、靈活的大型數據集容器。數字允許你使用類似於標量的操作語法在整塊數據上進行數學計算。

首先要導入NumPy模塊

import numpy as np

生成ndarray

生成數組對象最簡單的方式就是使用array函數。 array函數接收任意的序列型對象(當然也包括其他的數組),生成一個新的包含傳遞數據的NumPy數組。

生成一維數組:

data1 = [6,7.5,8,0,1]
arr1 = np.array(data1)
print(arr1)

[6. 7.5 8. 0. 1. ]

生成二維數組:

data2 = [[1,2,3,4],[5,6,7,8]]
arr2 = np.array(data2)
print(arr2)
print(arr2.ndim)
print(arr2.shape)

[[1 2 3 4]
[5 6 7 8]]
2
(2, 4)

ndim 與 shape

這兩個屬性都是用來表示數組的。

ndim 用來表示這個數組是幾維的

shape 用來表示這是一個幾乘幾的數組

dtype

除非顯式的指定,否則 np.array 會自動推斷生成數組的數據類型。 比如你的數組中如果有一個數字是浮點型的話 ,那么這個數據將會被自動推斷為float型數組,並且數據類型將會被存儲在一個特殊的元數據dtype中。

print(arr1.dtype)
print(arr2.dtype)

float64
int32

numpy 生成數組的函數:

函數名 | 描述

-----------函數名----- 描述
array 將輸入數據(可以是列表、元組、數組以及其他序列)轉換為ndarray,如不顯式得指明數據類型, 將自動推斷;默認復制所有的輸入數據
asarray 將輸入轉換為ndarray,但如果輸入已經是ndarray則不再復制,他和array的區別在於,當數據源是ndarray對象時,array仍會copy出一個副本,占用新的內存,但是asarray不會
arange Python內建函數range的數組版,返回一個數組例如 [1,2,3,4.....]
ones 根據給定形狀和數據類型生成全1的數組
ones_like 根據所給的數組生成一個形狀一樣的全1的數組
zeros 根據給定形狀和數據類型生成一個全0數組
zeros_like 根據所給的數組生成一個形狀一樣的全0數組
empty 根據給定形狀生成一個沒有初始化數值的空數組
empty_like 根據所給數組生成一個形狀一樣但是沒有初始化數值的空數組
full 根據給定的形狀和數組類型生成指定數值的數組 np.full(形狀,填充值,dtype=數據類型)
full_like 根據所給數組生成一個形狀一樣但是內容是指定數值的數組,只需把形狀參數改成一個ndarray對象就可以了
eyes 生成一個N*N特征矩陣 ,對角線位置全都是1,其余位置都是0,兩者的區別在於,前者可以控制矩陣的形狀,而后者只能是正方形矩陣


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM