亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

一文詳解NumPy數(shù)組迭代與合并

 更新時間:2024年05月15日 08:30:11   作者:小萬哥丶  
NumPy?數(shù)組迭代是訪問和處理數(shù)組元素的重要方法,它允許您逐個或成組地遍歷數(shù)組元素,NumPy?提供了多種函數(shù)來合并數(shù)組,用于將多個數(shù)組的內(nèi)容連接成一個新數(shù)組,本文給大家詳細介紹了NumPy數(shù)組迭代與合并,需要的朋友可以參考下

NumPy 數(shù)組迭代

NumPy 數(shù)組迭代是訪問和處理數(shù)組元素的重要方法。它允許您逐個或成組地遍歷數(shù)組元素。

基本迭代

我們可以使用 Python 的基本 for 循環(huán)來迭代 NumPy 數(shù)組。

一維數(shù)組迭代:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])

for element in arr:
    print(element)

二維數(shù)組迭代:

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])

for row in arr:
    for element in row:
        print(element)

多維數(shù)組迭代:

對于更高維度的數(shù)組,我們可以使用嵌套循環(huán)來迭代每個維度。

import numpy as np

arr = np.array([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]])

for cube in arr:
    for row in cube:
        for element in row:
            print(element)

使用 nditer() 進行高級迭代

NumPy 提供了 np.nditer() 函數(shù),用于更復雜的迭代操作。它允許您:

指定迭代順序:order 參數(shù)可以是 'C'(行優(yōu)先)或 'F'(列優(yōu)先)。 過濾元素:flags 參數(shù)可以包含 'filtering''slicing' 等標志,用于過濾元素。 轉換數(shù)據(jù)類型:op_dtypes 參數(shù)可以指定迭代過程中元素的數(shù)據(jù)類型。 使用步長:axesstep 參數(shù)可以用于指定迭代步長。

示例:

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6]])

# 迭代每個元素,并將其轉換為字符串
for element in np.nditer(arr, op_dtypes=['S']):
    print(element)

示例:

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6]])

# 迭代行,跳過第一個元素
for row in np.nditer(arr[:, 1:], flags=['slicing']):
    print(row)

示例:

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6]])

# 迭代列,每隔一個元素
for column in np.nditer(arr[:, ::2], flags=['slicing']):
    print(column)

使用ndenumerate()進行枚舉迭代

np.ndenumerate() 函數(shù)將每個元素與其索引一起返回。

示例:

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6]])

for (row_idx, col_idx), element in np.ndenumerate(arr):
    print(f"({row_idx}, {col_idx}): {element}")

練習

使用 NumPy 數(shù)組迭代完成以下任務:

  • 創(chuàng)建一個 3x3 的二維數(shù)組,并打印每個元素。
  • 創(chuàng)建一個 5x5x5 的三維數(shù)組,并打印每個元素的坐標和值。
  • 創(chuàng)建一個 10 個元素的一維數(shù)組,并計算數(shù)組元素的平均值。
  • 創(chuàng)建一個 2x2 的二維數(shù)組,并將其轉置(行列互換)。
  • 創(chuàng)建一個 3x4 的二維數(shù)組,并沿第 1 軸(行)堆疊兩個這樣的數(shù)組。

在評論中分享您的代碼和輸出。

Sure, here is the requested Markdown formatted content:

NumPy 合并數(shù)組

NumPy 提供了多種函數(shù)來合并數(shù)組,用于將多個數(shù)組的內(nèi)容連接成一個新數(shù)組。

合并數(shù)組

np.concatenate() 函數(shù)用于沿指定軸連接多個數(shù)組。

語法:

np.concatenate((arr1, arr2, ..., arrN), axis=None)

arr1, arr2, ..., arrN: 要合并的數(shù)組。 axis: 指定連接的軸。默認為 0。

示例:

import numpy as np

arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])

# 合并兩個一維數(shù)組
arr = np.concatenate((arr1, arr2))
print(arr)  # 輸出: [1 2 3 4 5 6]

# 沿行合并兩個二維數(shù)組
arr1 = np.array([[1, 2], [3, 4]])
arr2 = np.array([[5, 6], [7, 8]])
arr = np.concatenate((arr1, arr2), axis=1)
print(arr)  # 輸出: [[ 1  2  5  6]
                        #  [ 3  4  7  8]]

堆疊數(shù)組

np.stack() 函數(shù)用于沿新軸堆疊多個數(shù)組。

語法:

np.stack((arr1, arr2, ..., arrN), axis=None)

arr1, arr2, ..., arrN: 要堆疊的數(shù)組。 axis: 指定堆疊的軸。默認為 0。

示例:

import numpy as np

arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])

# 沿第二軸堆疊兩個一維數(shù)組
arr = np.stack((arr1, arr2), axis=1)
print(arr)  # 輸出: [[1 4]
                        #  [2 5]
                        #  [3 6]]

# 沿行堆疊
arr1 = np.array([[1, 2], [3, 4]])
arr2 = np.array([[5, 6], [7, 8]])
arr = np.stack((arr1, arr2), axis=0)
print(arr)  # 輸出: [[1 2]
                        #  [3 4]
                        #  [5 6]
                        #  [7 8]]

輔助函數(shù)

NumPy 提供了一些輔助函數(shù)來方便常見軸上的堆疊操作:

np.hstack():沿水平方向(行)堆疊數(shù)組。 np.vstack():沿垂直方向(列)堆疊數(shù)組。 np.dstack():沿第三軸(深度)堆疊數(shù)組。

示例:

import numpy as np

arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])

# 沿行堆疊
arr = np.hstack((arr1, arr2))
print(arr)  # 輸出: [1 2 3 4 5 6]

# 沿列堆疊
arr = np.vstack((arr1, arr2))
print(arr)  # 輸出: [[1 4]
                        #  [2 5]
                        #  [3 6]]

練習

使用 NumPy 的正確方法,將以下數(shù)組 arr1 和 arr2 合并成一個新數(shù)組。

import numpy as np

arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])

# 期望輸出: [1 4 2 5 3 6]

在評論中分享您的代碼和輸出。

最后

到此這篇關于一文詳解NumPy數(shù)組迭代與合并的文章就介紹到這了,更多相關NumPy數(shù)組迭代與合并內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論