Práctica 8- Funciones que muestran análisis.
Objetivo: Crear una función que muestra la media, el valor más alto y bajo de cualquier vector
#Sintaxis
function.name <- function(argumentos) {
# computacion_en_los_argumentos
# otro_codigo
}
#Crear una función que muestra 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 función en R")
## [1] "Hola, saludos desde la función en R"
#Crear un data frame y mandarlo llamar en la funcion fn.showmsg
datos <- data.frame(nombres=c("Oscar", "Paty", "Lulu"),edades = c(20,34,56))
fn.showmsg(datos)
## nombres edades
## 1 Oscar 20
## 2 Paty 34
## 3 Lulu 56
#Crear y ejecutar una función con argumentos varios
fn.varias.listas <- function(...) { # ... significan varios argumentos
l <- list(...) # Se reciben varias listas list(...)
print(l) # Mostrar las listas que se recibieron
}
fn.varias.listas(c(3,4,5,6,4), c("Ruben", "Mary", "Jorge"), c(34.5, 34.8, 54.6), datos, pi, 20 * 2)
## [[1]]
## [1] 3 4 5 6 4
##
## [[2]]
## [1] "Ruben" "Mary" "Jorge"
##
## [[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
#Media de varias listas numéricas
fn.media.listas <- function(...) {
l <- list(...) # Lista porque son de varios longitudes
# l es una variable y list palabra reservada que significa listas
print("Las medias (promedios) de cada conjunto de datos (listas):")
print(l) # Aqui se imprimen las listas todas al mismo tiempo
print("Son ... :")
for (i in 1:length(l)) {
media <- mean(l[[i]]) # La media de cada lista
print(media) # Utilizar cat o print() dentro del for
}
}
fn.media.listas(c(2,4,5,7), c(30,40,90), c(78,98,56), datos$edades)
## [1] "Las medias (promedios) de cada conjunto de datos (listas):"
## [[1]]
## [1] 2 4 5 7
##
## [[2]]
## [1] 30 40 90
##
## [[3]]
## [1] 78 98 56
##
## [[4]]
## [1] 20 34 56
##
## [1] "Son ... :"
## [1] 4.5
## [1] 53.33333
## [1] 77.33333
## [1] 36.66667
#Ejemplo de la función sort
sort(c("Lucy", "Manuel", "Arnulfo"), decreasing = FALSE)
## [1] "Arnulfo" "Lucy" "Manuel"