Python 3.x 在矩阵中查找鞍点

2023-11-29

这是我的matrix:

1  1  2  5  6  1     
5  6  8  5  6  7
10 12 10 12 11 11
8 10  5  6  8  9
6  5 10 12 15 19

我想找到它鞍点.

坐标 of 鞍点应该:

2 0 
2 2
0 4

所以我的问题是。有人可以告诉我如何用 Python 实现这个吗? :)


下面是一种 Python 方法,它将所有行/列的最小值和最大值的索引列表组合起来,然后使用集合运算来查找它们的交集:

def allSaddles(matrix):
    rowmins = []
    rowmaxs = []
    colmins = []
    colmaxs = []

    for i,row in enumerate(matrix):
        m = min(row)
        M = max(row)
        for j,x in enumerate(row):
            if x == m: rowmins.append((i,j))
            if x == M: rowmaxs.append((i,j))

    t = [list(column) for column in zip(*matrix)] #transpose of matrix

    for j,col in enumerate(t): 
        m = min(col)
        M = max(col)
        for i,x in enumerate(col):
            if x == m: colmins.append((i,j))
            if x == M: colmaxs.append((i,j))

    return (set(rowmins) & set(colmaxs)) | (set(rowmaxs) & set(colmins))

M = [[1,1,2,5,6,1],    
[5,6,8,5,6,7],
[10,12,10,12,11,11],
[8,10,5,6,8,9],
[6,5,10,12,15,19]]

print(allSaddles(M))

Output: {(0, 4), (2, 0), (2, 2)}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python 3.x 在矩阵中查找鞍点 的相关文章

  • 使用Python的工业视觉相机[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何 json_normalize() df 中的特定字段并保留其他列? [复制]

    这个问题在这里已经有答案了 这是我的简单示例 我的实际数据集中的 json 字段非常嵌套 因此我一次解压一层 我需要在 json normalize 之后保留数据集上的某些列 https pandas pydata org docs ref
  • 如何有条件地组合两个相同形状的 numpy 数组

    这听起来很简单 但我想我把它想得太复杂了 我想创建一个数组 其元素是从两个形状相同的源数组生成的 具体取决于源数组中哪个元素更大 为了显示 import numpy as np array1 np array 2 3 0 array2 np
  • 蟒蛇 |如何将元素随机添加到列表中

    有没有一种方法可以将元素随机添加到列表中 内置函数 ex def random append lst a lst append b lst append c lst append d lst append e return print ls
  • Pytest:如何使用从夹具返回的列表来参数化测试?

    我想使用由固定装置动态创建的列表来参数化测试 如下所示 pytest fixture def my list returning fixture depends on other fixtures return a dynamically
  • 如何在“python setup.py test”中运行 py.test 和 linter

    我有一个项目setup py文件 我用pytest作为测试框架 我还在我的代码上运行各种 linter pep8 pylint pydocstyle pyflakes ETC 我用tox在多个 Python 版本中运行它们 并使用以下命令构
  • 如何用xlrd读取公式

    我正在尝试做一个解析器 它读取几个 Excel 文件 我通常需要位于行底部的值 您可以在其中找到所有上部元素的总和 因此 单元格值实际上是 sum 或 A5 0 5 可以说 对于使用 Excel 打开此文件的用户来说 它看起来像一个数字 这
  • 使用 Python 解析 XML,解析外部 ENTITY 引用

    在我的 S1000D xml 中 它指定了一个带有对公共 URL 的引用的 DOCTYPE 该 URL 包含对包含所有有效字符实体的许多其他文件的引用 我使用 xml etree ElementTree 和 lxml 尝试解析它并得到解析错
  • 使用reduce方法的斐波那契数列

    于是 我看到有人用reduce方法来计算斐波那契数列 这是他的想法 1 0 1 1 2 1 3 2 5 3 对应于 1 1 2 3 5 8 13 21 代码如下所示 def fib reduce n initial 1 0 dummy ra
  • 以编程方式将列名称添加到 numpy ndarray

    我正在尝试将列名称添加到 numpy ndarray 然后按名称选择列 但这不起作用 我无法判断问题是在添加名称时出现 还是在稍后尝试调用它们时出现 这是我的代码 data np genfromtxt csv file delimiter
  • 如何将同步函数包装在异步协程中?

    我在用着aiohttp https github com aio libs aiohttp构建一个 API 服务器 将 TCP 请求发送到单独的服务器 发送 TCP 请求的模块是同步的 对于我来说是一个黑匣子 所以我的问题是这些请求阻塞了整
  • 按序列大小对 fasta 进行排序

    我目前想按序列大小对 hudge fasta 文件 10 8 行和序列 进行排序 fasta 是生物学中用于存储序列 遗传或蛋白质 的明确定义的格式 gt id1 序列 1 可以位于多行 gt id2 序列2 我运行了一个提供 tsv 格式
  • 如何在python中递归复制目录并覆盖全部?

    我正在尝试复制 home myUser dir1 及其所有内容 及其内容等 home myuser dir2 在Python中 此外 我希望副本覆盖中的所有内容dir2 It looks like distutils dir util co
  • 如何将reportlab与Google应用程序引擎一起使用

    我无法在谷歌应用程序引擎下正确导入reportlab 根据以下guide http blog notdot net 2010 04 Generating PDFs on App Engine Python and introducing M
  • PermanentTaskFailure:“模块”对象没有属性“迁移”

    我在 google appengine 上使用 Nick Johnson 的批量更新库 http blog notdot net 2010 03 Announcing a robust datastore bulk update utili
  • python 中的基本矩阵转置

    我尝试了 python 中矩阵转置的最基本方法 但是 我没有得到所需的结果 接下来是代码 A 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 print A def TS A B A for i in range len A
  • 使用 pandas 绘制带有误差线的条形图

    我正在尝试从 DataFrame 生成条形图 如下所示 Pre Post Measure1 0 4 1 9 这些值是我从其他地方计算出来的中值 我还有它们的方差和标准差 以及标准误差 我想将结果绘制为具有适当误差线的条形图 但指定多个误差值
  • Scikit Learn - K-Means - 肘部 - 标准

    今天我想学习一些关于 K means 的知识 我已经了解该算法并且知道它是如何工作的 现在我正在寻找正确的 k 我发现肘部准则作为检测正确的 k 的方法 但我不明白如何将它与 scikit learn 一起使用 在 scikit learn
  • 如何抑制 Pandas Future 警告?

    当我运行该程序时 Pandas 每次都会给出如下所示的 未来警告 D Python lib site packages pandas core frame py 3581 FutureWarning rename with inplace
  • Python - 打印漂亮的 XML 为空标签文本创建开始和结束标签

    我正在编写一个 python 应用程序 它创建一个 ElementTree XML 然后使用 minidom 的 toprettyxml 将其写入文件 final tree minidom parseString ET tostring r

随机推荐

  • 如何用 Java 实现 FSM - 有限状态机

    我有工作要做 需要你的帮助 我们想要实施一个FSM Finite State Machine 识别字符序列 如 A B C A C 并判断是否接受 我们认为要实现三个类 State Event and Machine The state类代
  • 使用 pdf.js 在画布上绘制矩形并加载 pdf 文件

    我正在尝试在 pdf 文件上绘制矩形 当我在 pdf 中绘制矩形时 矩形无法正确绘制 我只想一次只绘制一个矩形 当我绘制新矩形时 旧矩形应该被删除 但它没有发生 这是我的代码 pdf的渲染代码 渲染正常 function pdfFile f
  • 我可以使用 multer 和单个 html 表单上传不同文件夹中的多个文件吗?

    我正在尝试开发一个模块 该模块应该从单个 html 表单上传文件 想象一个包含两个文件的表单 1 用户的头像 2 简历相同的用户 我将在 avatar 中上传第一个文件 在 cv 中上传第二个文件 我可以用三种方法来做到这一点 array
  • 如何在nodejs中将原始内存复制到Buffer?

    I use node and node ffi 我从 native C 收到一个回调 它传递了一个 void size t 指示具有有趣数据的内存区域 我想利用它并创造Buffer具有相同的内容 基本上 function callback
  • 在图例ggplot中显示填充箭头

    我正在尝试绘制一条末端带有箭头的线段 并使其出现在图例中 我可以使用以下代码来做到这一点 library ggplot2 sample data dat lt data frame x as factor 1 10 y c 20 30 13
  • .net core 2.2 和 3.1 应用程序插槽可以在同一个应用程序服务中共存吗?

    目前 我们在 azure 应用程序服务中有两个插槽 暂存和生产 我们刚刚将 net core 2 2 迁移到 3 1 并在单独的开发应用服务中对其进行了测试 我们即将将 3 1 应用程序发布到暂存阶段 有谁知道让一个插槽运行 2 2 而另一
  • 如何在控制器的操作中显示模式窗口?

    所以我有控制器 PagesController 与操作索引和 full search 操作索引用于主页 在主页上 我有按钮 搜索 和文本字段 如果用户在文本字段中输入某些内容并单击 搜索 按钮 他 她将执行 full search 操作 在
  • Nodejs:从视频缓冲区(不是文件路径)生成缩略图

    我有一个 Node API 它接受通过客户端 FormData 上传的视频文件 结果是req file object fieldname media originalname IMG 6288 MOV encoding 7bit mimet
  • Spring Security登录成功后重定向到上一页

    我知道这个问题之前已经被问过 但是我在这里面临一个特定的问题 我使用弹簧安全3 1 3 我的 Web 应用程序中有 3 种可能的登录情况 通过登录页面登录 好的 通过受限页面登录 也可以 通过非限制页面登录 不行 每个人都可以访问 产品 页
  • ASP.NET WEBAPI 文件上传,IE9 问题

    我使用 ASP NET WEBAPI 创建了一个文件上传方法 代码如下 DataContract public class FileDesc DataMember public string name get set DataMember
  • Fullcalendar 为每一天添加自定义按钮

    如何在 fullCalendar 中为每一天添加自定义按钮 为此 您最好的解决方案可能是日渲染回调允许您在日历上绘制每天的单元格之前添加额外的 HTML 例如这是一个超级简单的例子 dayRender function info info
  • JSF 验证。这可以简化吗?

    我有一个带有一堆字段的简单表单 它们每个都是必需的 并且每个都有不同的名称 city state 提交表单时 我检查每个字段是否为空并添加一个独特的信息对于上下文的每次验证 例如 城市为必填项 状态为必填项 我不能简单地在 jsp 上使用
  • 我们如何在GCP Composer环境(1.10.6)中使用SFTPToGCSOperator?

    这里我想在GCP的composer环境 1 10 6 中使用SFTPToGCSOperator 我知道存在限制 因为操作符仅出现在最新版本的气流中 而不出现在 Composer 最新版本 1 10 6 中 请参阅参考资料 https air
  • Notepad++ - 正则表达式:替换每行中第一次出现的字符组

    有人会知道可以使用正则表达式 在记事本 中 来替换每行中第一次出现的字符组 eg abcdefg ijkl m qsdflkj sdqlmkf jqsmdl to abcdefg ijkl m qsdflkj sdqlmkf jqsmdl
  • 调试发送程序指令时“事务模拟失败”(Solana Solidity)

    当尝试调用编译的程序时 solana solidity 我收到以下错误 Transaction simulation failed Error processing Instruction 0 Program failed to compl
  • 无法正确更新 DirectionalLight 阴影

    我有一个DirectionalLight在我的场景中 当我第一次创建灯光时 阴影覆盖了预期的区域 当调整视口大小 画布大小 时 我更新shadowCamera参数 右 左 上 下 以及灯光的位置和目标 但阴影仅覆盖更新前的区域 我必须设置什
  • 我如何获得特定类的 td nodeValue ?

    我有以下 html 表 table tr td img src name0 gif alt Name0 td td src name1 gif alt Name1 td td src name2 gif alt Name2 td td sr
  • 以编程方式创建属性 - 核心数据

    我有一个简单的 iphone 项目 其中包含一个简单的 xcdatamodel 它有一个实体 大约有3个属性 我想知道是否有一种方法可以以编程方式向实体添加属性 即 如果用户按下某种 添加 按钮 则会将一个简单的字符串属性添加到实体并保存
  • C# 操作/函数列表

    我有一个程序必须根据枚举执行一个函数 我想知道是否还有其他方法 enum FunctionType Addition 0 Substraction 1 Mutiplication 2 Division 3 void ExecuteFunct
  • Python 3.x 在矩阵中查找鞍点

    这是我的matrix 1 1 2 5 6 1 5 6 8 5 6 7 10 12 10 12 11 11 8 10 5 6 8 9 6 5 10 12 15 19 我想找到它鞍点 坐标 of 鞍点应该 2 0 2 2 0 4 所以我的问题是