【python】python求解矩阵的转置(详细讲解)

简介: 【python】python求解矩阵的转置(详细讲解)


👉博__主👈:米码收割机

👉技__能👈:C++/Python语言

👉公众号👈:测试开发自动化【获取源码+商业合作】

👉荣__誉👈:阿里云博客专家博主、51CTO技术博主

👉专__注👈:专注主流机器人、人工智能等相关领域的开发、测试技术。



一、问题描述

求一个矩阵的转置

示例1:

输入:[[1, 2, 3], [4, 5, 6]]

输出:[[1, 4], [2, 5], [3, 6]]

分析:

输入矩阵的形式为:

1 2 3

4 5 6

矩阵的转置为:

1 4

2 5

3 6


二、代码实现

代码如下(示例):

def trans_metrix(arr):
    # 获取原矩阵的行数和列数
    row = len(arr)  # 原矩阵的行数
    col = len(arr[0])  # 原矩阵的列数
    # 初始化一个空列表用于存放转置后的矩阵
    last_arr = []
    # 进行矩阵转置
    for i in range(col):
        # 初始化一个新的列表用于存放转置后的当前列
        new_arr = []
        for j in range(row):
            # 获取原矩阵第j行第i列元素,并将其添加到新的列表中
            new_arr.append(arr[j][i])
        # 将转置后的当前列添加到结果矩阵中
        last_arr.append(new_arr)
    return last_arr
arr = [[1, 2, 3], [4, 5, 6]]
print(trans_metrix(arr))

三、代码说明

  1. 函数定义:代码定义了一个名为 trans_metrix 的函数,该函数接收一个二维列表 arr 作为输入参数,并返回一个转置后的二维列表 last_arr
  2. 获取矩阵的行数和列数:通过 len(arr)len(arr[0]) 分别获取原矩阵 arr 的行数 row 和列数 col
  3. 初始化空列表:创建一个空列表 last_arr,用于存放转置后的矩阵。
  4. 进行矩阵转置:使用两层嵌套循环,首先外层循环变量 i 从 0 到 col-1,内层循环变量 j 从 0 到 row-1,遍历原矩阵的每个元素。
  5. 转置过程:在内层循环中,通过 arr[j][i] 获取原矩阵中第 j 行第 i 列的元素,并将其添加到一个新的列表 new_arr 中。
  6. 更新转置矩阵:在每次内层循环完成后,将 new_arr 添加到结果矩阵 last_arr 中,这样,last_arr 中的每一项都是原矩阵 arr 的列,从而完成了矩阵的转置。
  7. 返回结果:返回转置后的矩阵 last_arr
  8. 测试代码:调用 trans_metrix 函数,传入二维列表 arr,并打印返回的转置后的结果。

总体来说,这段代码实现了矩阵的转置功能,通过两层嵌套循环遍历原矩阵的元素,并将其按转置规则存放到新的列表中,最后返回转置后的结果。在测试代码中,输入矩阵 arr[[1, 2, 3], [4, 5, 6]],输出结果是[[1, 4], [2, 5], [3, 6]],符合矩阵转置的预期结果。



相关文章
|
17天前
|
机器学习/深度学习 TensorFlow 算法框架/工具
PYTHON TENSORFLOW 2二维卷积神经网络CNN对图像物体识别混淆矩阵评估|数据分享
PYTHON TENSORFLOW 2二维卷积神经网络CNN对图像物体识别混淆矩阵评估|数据分享
|
12天前
|
机器学习/深度学习
python-随机森林后筛选最重要变量,模型准确率、随机森林混淆矩阵结果、基尼系数排序图
python-随机森林后筛选最重要变量,模型准确率、随机森林混淆矩阵结果、基尼系数排序图
|
12天前
|
机器学习/深度学习 数据采集 自然语言处理
图像分类模型评估之用python绘制混淆矩阵confusion_matrix_python confusion_matrix
图像分类模型评估之用python绘制混淆矩阵confusion_matrix_python confusion_matrix
|
15天前
|
Python
【Python 百练成钢】高精度加法、阶乘计算、矩阵幂运算、矩阵面积交
【Python 百练成钢】高精度加法、阶乘计算、矩阵幂运算、矩阵面积交
|
15天前
|
存储 算法 Python
【Python 百练成钢】高精度加法、阶乘计算、矩阵幂运算、矩阵面积交(2)
【Python 百练成钢】高精度加法、阶乘计算、矩阵幂运算、矩阵面积交(2)
|
15天前
|
存储 算法 Python
【Python 百练成钢】高精度加法、阶乘计算、矩阵幂运算、矩阵面积交(1)
【Python 百练成钢】高精度加法、阶乘计算、矩阵幂运算、矩阵面积交(1)
|
17天前
|
Python
Python中的反对称矩阵(Skew-Symmetric Matrices)
Python中的反对称矩阵(Skew-Symmetric Matrices)
19 2
|
17天前
|
人工智能 Python
Python中的反对称矩阵:理论、应用与代码实践
Python中的反对称矩阵:理论、应用与代码实践
31 1
|
17天前
|
机器学习/深度学习 Python
【Python 机器学习专栏】混淆矩阵与 ROC 曲线分析
【4月更文挑战第30天】本文介绍了机器学习中评估模型性能的两种工具——混淆矩阵和ROC曲线。混淆矩阵显示了模型在不同类别上的预测情况,包括真正例、假正例、真反例和假反例,帮助评估模型错误类型和数量。ROC曲线则通过假正率和真正率展示了模型的二分类性能,曲线越接近左上角,性能越好。文章还提供了Python中计算混淆矩阵和ROC曲线的代码示例,强调它们在模型选择、参数调整和理解模型行为中的应用价值。
|
17天前
|
Shell Python
python|闲谈2048小游戏和数组的旋转及翻转和转置
python|闲谈2048小游戏和数组的旋转及翻转和转置
31 1