Descripcíon. Crear una función que recibe un argumento tipo vector y muestra la media, el valor mas alto y bajo del vector. Además muestra el vector ordenado dependiendo si es ‘A’ de ascendente o cualquier otra cosa
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 funcion en R")
## [1] "hola saludos desde la funcion en R"
fn.showmsg(c(2,3,4,5,6,8))
## [1] 2 3 4 5 6 8
##crear un dataframe
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 argumentos
l <- list(...) ##se reciben varias listas
print(l) ##mostrar las listas que se recibieron
}
##Ejecutar la funcion de varios argumentos tipo listas
fn.varias.listas(c(3,4,5,6,4), c("Ruben", "Mary", "Jorge"),c(34.5,34.8,54.6),datos,pi, 20*2) ##se enviaron varios vectores y un data frame
## [[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 es una reservada que significa que todo lo convierte a listas
print("Las medias (promedios) de cada conjunto de datos (listas):")
print(l)
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) ##Ejecutar y le enviamos varios vectores y una columna de un data frame
## [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
##Ejejmplo de la función sort)=
sort(c("Lucy", "Manuel", "Arnulfo"), decreasing = FALSE)
## [1] "Arnulfo" "Lucy" "Manuel"
##Crear la función que recibe un vector numérico y muestra valores media, mas alto y bajo de un vector así como devolver el vector ordenado.
fnshow.datos.vector <- function (argmivector, argmodo ) {
print("Datos del vector. Media, Máximo, mínimo y ordenado")
print(paste("Media: ",round(mean(argmivector),2)))
print(paste("Máximo: ",max(argmivector)))
print(paste("Mínimo: ",min(argmivector)))
if (argmodo == 'A') {
print(sort(argmivector, decreasing = FALSE)) ## menor a mayor
} else {
print(sort(argmivector, decreasing = TRUE)) ##mayor a menor
}
} # cIERRA LA FUNCION
##Ejecutando la función 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(7,3,6,7,8,9,6,5,7,8,1,3,4,6,0,4,5,8,4,5,6), 'X')
## [1] "Datos del vector. Media, Máximo, mínimo y ordenado"
## [1] "Media: 5.33"
## [1] "Máximo: 9"
## [1] "Mínimo: 0"
## [1] 9 8 8 8 7 7 7 6 6 6 6 5 5 5 4 4 4 3 3 1 0