欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

numpy.ndarray.flatten()函數(shù)的具體使用

 更新時間:2023年03月13日 09:38:03   作者:勤奮的大熊貓  
本文主要介紹了numpy.ndarray.flatten()函數(shù)的具體使用,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

該函數(shù)主要用來快速扁平化數(shù)組,請看如下代碼:

import numpy as np


class Debug:
? ? def __init__(self):
? ? ? ? self.array1 = np.array([[1, 2], [3, 4]])
? ? ? ? self.array2 = np.ones((2, 2, 2))

? ? def mainProgram(self):
? ? ? ? print("The value of array1 is: ")
? ? ? ? print(self.array1)
? ? ? ? print("The value of flattened array is: ")
? ? ? ? array2 = self.array1.flatten()
? ? ? ? print(array2)
? ? ? ? print("The value of array2 is: ")
? ? ? ? print(self.array2)
? ? ? ? print("The value of flattened array is: ")
? ? ? ? print(self.array2.flatten())


if __name__ == '__main__':
? ? main = Debug()
? ? main.mainProgram()
"""
The value of array1 is:?
[[1 2]
?[3 4]]
The value of flattened array is:?
[1 2 3 4]
The value of array2 is:?
[[[1. 1.]
? [1. 1.]]

?[[1. 1.]
? [1. 1.]]]
The value of flattened array is:?
[1. 1. 1. 1. 1. 1. 1. 1.]
"""

我們可以到,使用數(shù)組調(diào)用flatten()可以快速地將二維或者三維數(shù)組快速地扁平化。

numpy.ravel() 和 numpy.flatten()

首先聲明兩者所要實現(xiàn)的功能是一致的(將多維數(shù)組降位一維),兩者的區(qū)別在于返回拷貝(copy)還是返回視圖(view),numpy.flatten()返回一份拷貝,對拷貝所做的修改不會影響(reflects)原始矩陣,而numpy.ravel()返回的是視圖,會影響(reflects)原始矩陣。

1. 兩者的功能

>>> x = np.array([[1, 2], [3, 4]])
>>> x
array([[1, 2],
       [3, 4]])
>>> x.flatten()
array([1, 2, 3, 4])
>>> x.ravel()
array([1, 2, 3, 4])
 
# 兩者默認均是行序優(yōu)先
>>> x.flatten('F')
array([1, 3, 2, 4])
>>> x.ravel('F')
array([1, 3, 2, 4])
 
>>> x.reshape(-1)
array([1, 2, 3, 4])
>>> x.T.reshape(-1)
array([1, 3, 2, 4])

2. 兩者的區(qū)別

>>> x = np.array([[1, 2], [3, 4]])
 
>>> x.flatten()[1] = 100  # flatten:返回的是拷貝
>>> x
array([[1, 2],
       [3, 4]])           
 
>>> x.ravel()[1] = 100
>>> x
array([[  1, 100],
       [  3,   4]])

到此這篇關(guān)于numpy.ndarray.flatten()函數(shù)的具體使用的文章就介紹到這了,更多相關(guān)numpy flatten內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論