¿Me falta algo obvio aquí? Parece que la función inversa de which
falta en la base R (Google e incluso una búsqueda en SO para "R inverso que" devuelve una gran cantidad de enlaces no relacionados)?Inverso del cual
Bueno, no es que no pueda escribir uno, sino simplemente para aliviar mi frustración por su falta y como un desafío de flexión de los músculos R: ¿cómo harías para escribir uno?
Lo que necesitamos es una función como:
invwhich<-function(indices, totlength)
que devuelve un vector lógica de longitud totlength
que cada elemento de indices
es TRUE
y el resto es FALSE
.
Es probable que haya muchas formas de lograr esto (algunas de las cuales son realmente bajas), por lo tanto, argumente por qué su solución es la "mejor". Oneliner alguien?
Si se toma en cuenta algunos de los otros parámetros de which
(arr.ind
??), eso es, obviamente, mucho mejor ...
No estoy seguro de que esta es la inversa de ' que' Es como decir que hacer un pastel es lo contrario a comer uno. No puede tener una inversa porque 'which' solo le proporciona índices de un vector y no puede conocer la longitud del vector del resultado. Por lo tanto, no hay función 'invwhich' en R. – John