【发布时间】:2021-04-30 03:44:45
【问题描述】:
如果给定索引,则有多个问题涉及删除 Julia 矩阵中的特定行。
How to delete a row of matrix in julia
Julia: delete rows and columns from an array or matix
我需要的略有不同,因为只有当所有行的值都为零时,我才想删除矩阵的一行。
当您想删除给定特定条件或功能的行时,也许您可以概括我的问题。这可能是连续的,sum(row .!= 0) == 0
我为列找到了 I need here 的确切转置,但我无法为行调整它。我试过了:
a[vec(mapslices(col -> any(col .!= 0), a, dims = 1)), :]
a[:, vec(mapslices(col -> any(col .!= 0), a, dims = 2))]
都失败了。
举个例子,我想删除下面矩阵中的第三行。
1 0 0 0 0
0 1 0 0 0
0 0 0 0 0
0 0 0 1 0
最后,如果可能的话,我更愿意创建矩阵视图而不是复制。这不是强制性的,但我认为我不需要副本,因此运行时间可能会更好:)
【问题讨论】:
标签: arrays performance matrix conditional-statements julia