Practica 8 Creando funciones y visualizando analisis
Objetivo: Crear una funcion que muestra la media, el valor mas alto y bajo de cualquier vector
Descripcion: Crear una función que recibe un argumento tipo vector y muestra la media, el valor mas alto y bajo del vector. Ademas muestra el vector ordenado dependiendo si es ‘A’ de ascendente o cualquier otra cosa
Sintaxis para crear funciones en R
function.name <- function(argumentos) {
# computacion_en_los_argumentos
# otro_codigo
}
Crear una funcion que muestre un mensaje que recibe como argumento
fn.showmsg <- function(msg){
#print(msg) #sugerencia mostrar con
#print() o cat()
msg
}
fn.showmsg("Hola saludos desde la funcion en R")
## [1] "Hola saludos desde la funcion en R"
fn.showmsg(c(2,3,4,6,8))
## [1] 2 3 4 6 8
Creando un dataframe y mandando llamar a la funcion fn.show
datos <- data.frame(nombres = c("Oscar", "Paty", "Lulu"), edades = c(20,34,56))
datos
## nombres edades
## 1 Oscar 20
## 2 Paty 34
## 3 Lulu 56
fn.showmsg(datos)
## nombres edades
## 1 Oscar 20
## 2 Paty 34
## 3 Lulu 56
Crear una funcion con argumentos varios
fn.varias.listas <- function(...) { # ... significan varios args
l <- list(...) # Se reciben varias listas list(...)
print(l) # Mostrar las listas que se recibieron
}
Ejecutar la funcion de varios argumentos tipo listas
# Le enviamos a la función varios vectores, un df un pi y 20*2
fn.varias.listas(c(3,4,5,6,4), c("Ruben", "Mary", "Jorgue"), c(34.5, 34.8, 54.6), datos, pi, 20 * 2) # Se enviearon varios vectore y un df
## [[1]]
## [1] 3 4 5 6 4
##
## [[2]]
## [1] "Ruben" "Mary" "Jorgue"
##
## [[3]]
## [1] 34.5 34.8 54.6
##
## [[4]]
## nombres edades
## 1 Oscar 20
## 2 Paty 34
## 3 Lulu 56
##
## [[5]]
## [1] 3.141593
##
## [[6]]
## [1] 40
Ejecutar
# Le enviamos varios vectores y una columna de un dataframe
fn.media.listas(c(2,4,5,7), c(30,40,90), c(78,98,56))
## [1] "Las medias de cada conjunto de datos (listas):"
## [[1]]
## [1] 2 4 5 7
##
## [[2]]
## [1] 30 40 90
##
## [[3]]
## [1] 78 98 56
##
## [1] "Es ... :"
## [1] 4.5
## [1] 53.33333
## [1] 77.33333
Ejemplo de la funcion sort
sort(c("Hugo", "Paco", "Luis"))
## [1] "Hugo" "Luis" "Paco"
sort(c("Hugo", "Paco", "Luis"),decreasing = FALSE)
## [1] "Hugo" "Luis" "Paco"
Ejecutando la funcion anterior
fnshow.datos.vector(c(3,4,5,6), 'A')
## [1] "Datos del vector. Media, Máximo, mínimo y ordenado"
## [1] "Media: 4.5"
## [1] "Máximo: 6"
## [1] "Mínimo: 3"
## [1] 3 4 5 6
fnshow.datos.vector(c(3,4,5,6,7,9,7,3,5,8), 'A')
## [1] "Datos del vector. Media, Máximo, mínimo y ordenado"
## [1] "Media: 5.7"
## [1] "Máximo: 9"
## [1] "Mínimo: 3"
## [1] 3 3 4 5 5 6 7 7 8 9
fnshow.datos.vector(c(3,4,5,6,7,9,7,3,5,8,4,3,1,4), 'A')
## [1] "Datos del vector. Media, Máximo, mínimo y ordenado"
## [1] "Media: 4.93"
## [1] "Máximo: 9"
## [1] "Mínimo: 1"
## [1] 1 3 3 3 4 4 4 5 5 6 7 7 8 9