相关疑难解决方法(0)

查找多维结构中的位置列表(数组)

假设我有一个简单的多维结构,就像这样:

somestr<-array(sample.int(2, 120, replace=TRUE), dim=c(4,5,6))
Run Code Online (Sandbox Code Playgroud)

我正在寻找结构中的所有位置(在这种情况下,数组),其中值等于,例如,对于我的示例,2.请注意,结构可能同样包含字符或逻辑.现在,它只是找到所有与给定值相等的值,但将这个想法扩展到可以应用于结构中每个项目的任何逻辑值函数(这将允许例如is.na使用)将是很好的..

我想得到的是一个(integer)矩阵,其列数与somestr维数一样多(在本例中为3),以及多行(取决于上面的sample.int调用),因为有等于给定值的值( 2).此新矩阵somestr中的值是值等于2 的"坐标" .

我为将我的例子与解释混在一起道歉,但我希望这样更清楚.为了记录:我能够自己制作这个(甚至可以回答我自己的问题),但我希望有一个标准化的解决方案(阅读:在一些软件包中的现成功能),或者沿途学习新的技巧.

那么,总之,你能写一个函数吗?

posOf<-function(somestr, valueToCompareTo)
Run Code Online (Sandbox Code Playgroud)

返回somestr等于的位置矩阵valueToCompareTo,如果valueToCompareTo是函数,则somestr返回应用此函数返回的位置TRUE.

position r multidimensional-array

6
推荐指数
1
解决办法
484
查看次数

标签 统计

multidimensional-array ×1

position ×1

r ×1