【再回首Python之美】【矩阵】求矩阵中最大元素/最小元素的行列坐标 For 层次聚类算法Hierarchical Clustering Alg

求多维矩阵中最小元素的行列坐标,这个在层次聚类算法中用到,这里实现记录一下。

1.简介

矩阵M:
 [[1 3 2]
 [2 6 0]
 [9 8 5]]

最大元素是9,对应的行列坐标为(2,0)

最小元素是0,对应的行列坐标是(1,2)

现在任务就是:输入M,输出最小/大元素的行列坐标,代码如下所示:

2.code

# -*- coding: utf-8 -*-
"""
@author: 蔚蓝的天空Tom
:计算矩阵中的最小元素,最大元素,以及对应的行列坐标
"""

import numpy as np

def indmax_matrix(M):
    '''得到矩阵M中最大元素的行列坐标'''
    row,col = divmod(np.argmax(M), np.shape(M)[1])
    return row,col
    
def indmin_matrix(M):
    '''得到矩阵M中最小元素的行列坐标'''
    row,col = divmod(np.argmin(M), np.shape(M)[1])
    return row,col

if __name__=='__main__':
    M = np.array([[1,3,2],
                  [2,6,0],
                  [9,8,5]])
    print('矩阵:\n', M)
    print('矩阵中最大元素值:', np.max(M))
    print('矩阵中最小元素值:', np.min(M))
    print('矩阵中最大元素的行列坐标:', indmax_matrix(M))
    print('矩阵中最小元素的行列坐标:', indmin_matrix(M))

3.运行结果

runfile('C:/Users/tom/hierarchical_clustering.py', wdir='C:/Users/tom')
矩阵:
 [[1 3 2]
 [2 6 0]
 [9 8 5]]
矩阵中最大元素值: 9
矩阵中最小元素值: 0
矩阵中最大元素的行列坐标: (2, 0)
矩阵中最小元素的行列坐标: (1, 2)

(end)

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值