在某些行/列值处提取子矩阵

2023-11-30

我需要根据行/列索引和切片距离来切片 2D 输入数组。在下面的示例中,我可以从输入矩阵中提取 3x3 子矩阵,但我无法调整此代码以适应我想要的任何搜索距离,而无需手动写下索引:

Example:

import numpy as np

# create matrix
mat_A = np.arange(100).reshape((10, 10))

row = 5
col = 5

# Build 3x3 matrix around the centre point
matrix_three = ((row - 1, col - 1),
                (row, col - 1),
                (row + 1, col - 1),
                (row - 1, col),
                (row, col),  # centre point
                (row + 1, col),
                (row - 1, col + 1),
                (row, col + 1),
                (row + 1, col + 1))

list_matrix_max_values = []

for loc in matrix_three:
    val = mat_A[loc[0]][loc[1]]
    list_matrix_max_values.append(val)


submatrix = np.matrix(list_matrix_max_values)
print(submatrix)

Returns:

[[44 54 64 45 55 65 46 56 66]]

例如,如果我想提取由行/列索引定义的单元格周围的 5x5 矩阵,我该如何做同样的事情? 提前致谢!


Numpy 具有矩阵切片功能,因此您可以对行和列进行切片。

mat_A[4:7, 4:7]

returns

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

在某些行/列值处提取子矩阵 的相关文章

随机推荐

  • 在 ruby​​ gpgme 中使用密码回调

    我正在使用 ruby gpgme gem 1 0 8 我的密码回调未被调用 def passfunc args fd args last io IO for fd fd w io puts mypassphrase io flush end
  • 回发后在 TextBox 中设置焦点

    我有一个简单的页面 我想根据文本框中的值过滤列表框 两者都在 UpdatePanel 中 这可以正常工作 但是 在回发后 文本框失去了焦点 所以我将焦点设置回 page load 中 然后我注意到光标现在位于文本的开头 而我希望它位于末尾
  • 使用selenium Python滚动到无限加载页面的末尾

    我正在使用 Selenium 从 Twitter 上抓取关注者姓名 并且该页面是无限的 每当我向下滚动时 我都可以看到新的关注者 不知何故 我想转到页面底部 以便我可以scrape所有的追随者 while number 5 driver e
  • 如何在 SML/NJ 中进行按位与运算?

    我正在编写的程序需要它 重复平方来计算 x n 我似乎找不到它的语法 或者是否支持它 它们可在Word8 and Word结构 let open Word8 infix andb orb xorb notb lt lt gt gt gt g
  • async wait 任务空引用异常

    I am getting NullReferenceExceptions on a webforms project I m maintaining The catch is that there is no stacktrace for
  • 解析命令调用的输出

    因此 我尝试从 python 执行 shell 命令 然后将其存储在数组中或直接解析管道 shell 命令 我通过 subprocess 命令管道传输 shell 数据 并使用 print 语句验证输出 它工作得很好 a subproces
  • 单击/激活 jQuery UI 选项卡时触发函数?

    我正在使用 jQuery 选项卡 其中一个选项卡中的内容是通过 AJAX 调用检索的 但我不想在单击选项卡 激活 之前触发调用 因为用户可能不一定单击它 最好的方法是什么 jQuery UI 提供select and show选项卡的事件
  • 默认情况下,Java 类会隐式扩展 java.lang.Object [重复]

    这个问题在这里已经有答案了 在本教程中 http www studytonight com java object and classes 我读到java 类可以选择扩展一个父类 默认情况下 它将扩展 java lang Object No
  • 如何在 MATLAB 中使用线性索引为 4-D 矩阵的对角线赋值?

    我有一个 4 维矩阵A尺寸的NxNxPxQ 如何轻松地将每个对角线值更改为 1NxN矢量化方式的二维子矩阵 结合 gnovice 的建议 对元素进行索引的一种简单方法是 N P Q size A get dimensions of your
  • 在下载过程中使用 swingworker 更新 JProgressBar

    问题解决了 非常感谢 Trashgod 和 HoverCraftFullOfEels 我终于通过使用下面的示例并稍微改变它得到了这个概念 更改允许缩放进度条 默认为 100 个单位 再次感谢您的耐心和愿意解决这个问题 意味着很多人 凯特 p
  • 发送大量发布消息:正在进行中的发布过多错误

    这是泛美卫生组织异步客户端 client new MqttAsyncClient appProps getProperty mqtt broker appProps getProperty mqtt clientId new MemoryP
  • 可以解析 HTML 文档并构建 DOM 树(java)

    是否可能以及可以使用哪些工具将 html 文档解析为字符串或文件 然后构建 DOM 树 以便开发人员可以通过某些 API 遍历该树 例如 DomRoot parse myhtml html for tags DomRoot 注意 这是一个
  • 为什么MIPS不能在寻址模式下使用两个寄存器?

    我很好奇为什么我们不允许在 MIPS 中使用寄存器作为偏移量 我知道你can t使用寄存器作为偏移量 如下所示 lw t3 t1 t4 我只是好奇why情况就是如此 是硬件限制吗 或者只是 ISA 的一部分 PS 如果您正在寻找替代方法 请
  • 根据 2 个以上组的百分比随机分配对照组与治疗组

    小猪放弃了我之前的问题python pandas 根据 随机分配对照组与治疗组 感谢 maxU 我知道如何将随机对照组 治疗组分配为 2 个组 但如果我有 3 个或更多组怎么办 例如 df head customer id Group ma
  • 如何用python3生成unicode字符串

    我用过这个 u unicode text utf 8 但是使用 Python 3 时出现错误 或者 也许我只是忘记包含一些内容 NameError global name unicode is not defined 谢谢 Python3
  • 从字符串中提取可变长度的数量

    我想从字符串中提取多个可变长度 该字符串如下所示 used memory 1775220696 我想要1775220696变量中的一部分 对此有很多疑问 但我找不到适合我需要的解决方案 您可以使用cut my val echo used m
  • 从 Java 应用程序启动 OpenVPN [关闭]

    Closed 这个问题需要多问focused 目前不接受答案 是否可以通过 Java 应用程序启动 OpenVPN 如果可能的话 最好的方法是什么 这样它是跨平台的 并且可以在所有安装了 OpenVPN 的平台上运行 你可以像这样用 Jav
  • 在构造函数或类中的粗箭头中绑定

    所以我想知道这之间是否有区别 import React Component PropTypes from react class Example extends Component constructor props super props
  • 仅将函数应用于一个 div 类,而不是全部

    我目前正在网站上的位置页面上工作 并且在显示 隐藏 jquery 效果时遇到问题 下面的 jQuery 激活点击并应用切换 div 的类以显示 隐藏它 非常简单 但是 当我添加更多具有相同类的 div 并单击激活器链接时 它会在所有 div
  • 在某些行/列值处提取子矩阵

    我需要根据行 列索引和切片距离来切片 2D 输入数组 在下面的示例中 我可以从输入矩阵中提取 3x3 子矩阵 但我无法调整此代码以适应我想要的任何搜索距离 而无需手动写下索引 Example import numpy as np creat