首页  >  文章  >  后端开发  >  如何在 NumPy 中重塑多维数组:分步指南

如何在 NumPy 中重塑多维数组:分步指南

Susan Sarandon
Susan Sarandon原创
2024-11-03 12:17:29446浏览

How to Reshape Multidimensional Arrays in NumPy: A Step-by-Step Guide

NumPy 中多维数组重塑的直觉和实现

在 NumPy 中,重塑多维数组对于数据操作和转换至关重要。这是一种直观的方法,并附有详细的示例:

了解重塑过程

重塑数组涉及两个连续步骤:

  • 轴排列:调整维度顺序以与所需的输出对齐。
  • 重塑操作:修改数组的形状以匹配预期维度。

示例:将 4D 数组重塑为 2D 数组

考虑给定的 4D 数组:

array([[[[ 0,  0],
         [ 0,  0]],

        [[ 5, 10],
         [15, 20]]],


       [[[ 6, 12],
         [18, 24]],

        [[ 7, 14],
         [21, 28]]]])

将其重塑为 (4, 4),遵循回溯法:

  1. 轴的排列:为了匹配输出步幅,将轴排列为 (2, 0, 3, 1 ).

    reshaped_array = a.transpose((2, 0, 3, 1))
  2. 重塑操作:将排列数组重塑为所需的形状。

    reshaped_array = reshaped_array.reshape(4,4)

输出:

array([[ 0,  5,  0, 10],
       [ 6,  7, 12, 14],
       [ 0, 15,  0, 20],
       [18, 21, 24, 28]])

其他示例

要进一步理解,请参阅这些演示各种多维数组重塑的附加示例:

  • [Python 将 3d 数组重塑为 2d](https://stackoverflow.com/questions/21777810/python-reshape-3d-array-into-2d)
  • [Numpy 更改形状从 (3, 512, 660, 4) 到 (3,2048,660,1)](https://stackoverflow.com/questions/48036140/numpy-change-shape-from-3-512-660-4 -至-3-2048-660-1)

以上是如何在 NumPy 中重塑多维数组:分步指南的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn