En R, tengo un elemento xy un vector v. Quiero encontrar el primer índice de un elemento vque sea igual a x. Sé que una forma de hacerlo es: which(x == v)[[1]]pero parece excesivamente ineficiente. ¿Hay alguna forma más directa de hacerlo?
Para puntos de bonificación, ¿hay una función que funcione si xes un vector? Es decir, debe devolver un vector de índices que indique la posición de cada elemento de xin v.
which(x == v)[[1]]no lo es.
which(x == v)[[1]]no es tan ineficiente. Es un==operador de comparación ( ) aplicado a todos los elementos vectoriales y un subconjunto en los índices (which). Eso es. Nada que deba ser relevante, siempre y cuando no esté ejecutando 10.000 repeticiones en esta función. Otras soluciones tienen gustomatchyPositionpueden no devolver tantos datos comowhich, pero no son necesariamente más eficientes.