R语言 查找矩阵中非零元素的指数
在这篇文章中,我们将讨论如何在R编程语言中找到矩阵中非零元素的索引。
方法1:使用for循环
可以在行和列上进行for循环迭代,以访问矩阵中包含的单元值。每个元素都被检查是否为非零值,如果满足约束条件,则显示相应的单元格索引。所需的时间复杂度相当于O(n * m),其中n是行的数量,m是列的数量。
输出
方法2:使用which()方法
which()方法用于返回满足给定约束条件的值的位置或索引。它将条件应用于指定的R对象、向量或数据框或矩阵的每个元素,然后返回满足条件的值的相应单元格位置。在此方法中,缺失的值或NA被视为FALSE。
语法: which( cond, arr.ind = FALSE)
参数:
cond – 可以是一个逻辑向量或一个数组。
arr.ind – 逻辑;指示是否应该返回数组的索引。
如果arr.ind参数设置为FALSE,则返回单元格值而不是索引。返回的索引以表格的形式显示,row和col是各列的标题。
输出
该方法也适用于字符数组或矩阵的情况。在这种情况下,整个矩阵单元格的位置将作为输出返回。
输出