迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

在 NumPy 中转置一维数组

作者:迹忆客 最近更新:2024/03/12 浏览次数:

数组和矩阵构成此 Python 库的核心。这些数组和矩阵的转置在某些主题(例如机器学习)中起着至关重要的作用。在 NumPy 中,很容易计算数组或矩阵的转置。


在 NumPy 中转置一维数组

要在 NumPy 中转置数组或矩阵,我们必须使用 T 属性,该属性存储转置的数组或矩阵。

T 属性是 NumPy 数组的专有属性,即仅 ndarray。此属性对 Python 列表无效。

从理论上讲,可以转置 1D 数组,但是从技术上或更准确地说,就编程语言而言,不可能转置 1D 数组。

不要误解我这个说法。只是在 Python 或任何其他编程语言中转置一维数组有点不同。一切都归结为如何用编程语言表示数组。

一维数组只是矩阵的一行。如果必须转置该数组(从技术上讲是矩阵),则必须将此 1D 矩阵转换为 2D 矩阵。然后使用指定的函数转置二维矩阵。

请参考以下代码以获得更好的解释。

import numpy as np

a = [1, 2, 3, 4, 5]
b = np.array(a)
c = np.array([a])
print(b)
print(c)
print(b.shape)
print(c.shape)
print(b.T)
print(c.T)

输出:

[1 2 3 4 5]
[[1 2 3 4 5]]
(5,)
(1, 5)
[1 2 3 4 5]
[[1]
 [2]
 [3]
 [4]
 [5]]

首先,我们使用 np.array() 方法和一个 Python 列表,形成两个 NumPy 数组,b 是 1D,c 是 2D。要将列表转换为 2D 矩阵,我们用 [] 括起来。然后,我们打印 NumPy 数组及其各自的形状。

但是要注意的最重要的一点是 1D 数组的转置与数组本身相同,但是 2D 数组的转置已完全更改。结果非常明显。

非转置 2D 数组内部有一个数组,其中五个元素代表矩阵的一行。转置后,2D 数组中有五个数组,代表转置矩阵的五行,每行有一个元素。这就是移调的工作方式!

而对于一维数组,返回相同的数组是因为 Python 中 [1 2 3 4 5] 的转置数组看起来像这样 [1 2 3 4 5]。此结果要求我们原始数组为 2D 而不是 1D。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

Pandas read_csv()函数

发布时间:2024/04/24 浏览次数:254 分类:Python

Pandas read_csv()函数将指定的逗号分隔值(csv)文件读取到 DataFrame 中。

Pandas 追加数据到 CSV 中

发布时间:2024/04/24 浏览次数:352 分类:Python

本教程演示了如何在追加模式下使用 to_csv()向现有的 CSV 文件添加数据。

Pandas 多列合并

发布时间:2024/04/24 浏览次数:628 分类:Python

本教程介绍了如何在 Pandas 中使用 DataFrame.merge()方法合并两个 DataFrames。

Pandas loc vs iloc

发布时间:2024/04/24 浏览次数:837 分类:Python

本教程介绍了如何使用 Python 中的 loc 和 iloc 从 Pandas DataFrame 中过滤数据。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便