【问题标题】:Ignoring when array index goes out of bounds当数组索引超出范围时忽略
【发布时间】:2016-02-12 17:29:26
【问题描述】:

我想索引很多python矩阵来对相应的元素进行计算(主要是点积)。 我在使用一个矩阵的非零值来索引具有较少列的矩阵时遇到问题 - 它会引发错误,指出索引超出范围。 有没有办法让我告诉python不要关心索引何时超出范围 - 忽略那些并只处理那些在范围内的? 代码是这样的:

for u in range (n): # u = row:
    U[R[u,:]!=0, u] ...

U 的维度是 (dxn),R 的维度是 (nxm),其中 m > n > d(通常)。

我希望在索引超出范围时可以忽略 python 中的内置内容?

【问题讨论】:

标签: python matrix indexing indexoutofboundsexception


【解决方案1】:

我刚刚意识到我可以找到矩阵 U 的形状并使用它来限制 R 的索引,如下所示:

n,m = U.shape
U[R[u,0:n]!=0, u]

这意味着它永远不会超出范围,因为我们只查看 R 中位于 U 范围内的部分

【讨论】:

    猜你喜欢
    • 2016-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多