Cómo aplicar funciones a un vector de r
los aplicar() La función es eficaz en cualquier cosa que tiene dimensiones en R, pero lo que si usted no tiene dimensiones? Para eso, tiene dos funciones relacionadas de la familia de aplicar a su disposición sapply () y lapply (). los l en lapply siglas de la lista y s en sapply soportes para simplificar.
Las dos funciones se utilizan básicamente el mismo - la única diferencia es que lapply () siempre devuelve una lista con el resultado, mientras sapply () trata de simplificar el objeto final, si es posible.
Ambos sapply () y lapply () considerar todos los valores en el vector para ser un elemento en el que se puede aplicar una función. Muchas de las funciones de trabajo de I en una forma vectorizada, por lo que a menudo no hay necesidad de utilizar este.
los cambiar() función, sin embargo, no funciona de una forma vectorizada. Considere el siguiente ejemplo básico:
gt; sapply (c ( `a`, `b`), el interruptor, a = `Hola`, b = `adiós`) a b"Hola" "Adiós"
los sapply () llamada funciona muy similar a la aplicar() llamar, aunque usted no tiene un argumento que especifica el índice. He aquí un resumen:
El primer argumento es el vector en el que los valores que desea aplicar la función - en este caso, el vector taxi`).
El segundo argumento es el nombre de la función - en este caso, cambiar.
Todos los demás argumentos son simplemente los argumentos que pasa a la cambiar función.
Video: Producto ESCALAR y VECTORIAL de dos vectores SECUNDARIA (4ºESO) matematicas
los sapply () función ahora toma primero el valor `un` y luego el valor `segundo` como primer argumento a cambiar(), utilizando los argumentos a =’Hola’ y b =’adiós’ cada tiempo que los otros argumentos. Combina ambos resultados en un vector y utiliza los valores de taxi`) como nombres para el vector resultante.
Video: 5.9 Cómo aplicar una función a un data frame
los sapply () función tiene un argumento USE.NAMES que se puede establecer a FALSO si no quiere sapply () utilizar los valores de caracteres como nombres para el resultado.