返回一個與給定陣列具有相同形狀和型別的新陣列,並更改NumPy中的順序
要返回一個與給定陣列具有相同形狀和型別的新陣列,請在 Python NumPy 中使用 **numpy.empty_like()** 方法。它返回一個未初始化(任意)資料的陣列,其形狀和型別與原型相同。這裡第一個引數是原型(類陣列)的形狀和資料型別,它們定義了返回陣列的這些相同屬性。我們使用“**order**”引數設定了順序。
order 引數會覆蓋結果的記憶體佈局。“C”表示 C 順序,“F”表示 F 順序,“A”表示如果原型是 Fortran 連續的則為“F”,否則為“C”。“K”表示儘可能匹配原型的佈局。shape 引數會覆蓋結果的形狀。如果 order='K' 並且維度數量不變,則會嘗試保持順序,否則,order='C' 為隱含的。overrides 引數會覆蓋結果的資料型別。
如果 subok 引數為 True,則新建立的陣列將使用原型的子類型別,否則它將是基類陣列。預設為 True。
步驟
首先,匯入所需的庫:
import numpy as np
使用 array() 方法建立一個 NumPy 三維陣列。我們添加了 int 型別的元素:
arr = np.array([[[5,10],[15,20]],[[25,30],[35,40]],[[50,60],[70,80]]])
顯示陣列:
print("Array...
",arr)獲取陣列的型別:
print("
Array type...
", arr.dtype)
獲取陣列的維度:
print("
Array Dimensions...
", arr.ndim)要返回一個與給定陣列具有相同形狀和型別的新陣列,請在 Python NumPy 中使用 numpy.empty_like() 方法。我們使用“order”引數設定了順序:
newArr = np.empty_like(arr, order = 'C')
print("
New Array..
", newArr)獲取新陣列的型別:
print("
New Array type...
", newArr.dtype)
獲取新陣列的維度:
print("
New Array Dimensions...
", newArr.ndim)示例
import numpy as np
# Creating a numpy Three-Dimensional array using the array() method
# We have added elements of int type
arr = np.array([ [[5,10],[15,20]], [[25,30],[35,40]], [[50,60],[70,80]] ])
# Display the array
print("Array...
",arr)
# Get the type of the array
print("
Array type...
", arr.dtype)
# Get the dimensions of the Array
print("
Array Dimensions...
", arr.ndim)
# To return a new array with the same shape and type as a given array, use the numpy.empty_like() method in Python Numpy
# It returns the array of uninitialized (arbitrary) data with the same shape and type as prototype.
# The 1st parameter here is the shape and data-type of prototype(array-like) that define these same attributes of the returned array.
# We have set the order using the "order" parameter
newArr = np.empty_like(arr, order = 'C')
print("
New Array..
", newArr)
# Get the type of the new array
print("
New Array type...
", newArr.dtype)
# Get the dimensions of the new array
print("
New Array Dimensions...
", newArr.ndim)輸出
Array... [[[ 5 10] [15 20]] [[25 30] [35 40]] [[50 60] [70 80]]] Array type... int64 Array Dimensions... 3 New Array.. [[[ 0 0] [ 0 0]] [[140556668570992 140556671038576] [140556668571056 140556668441520]] [[140556668441712 140556668441776] [140556668441840 140556668442416]]] New Array type... int64 New Array Dimensions... 3
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP