Capítulo 16 Criando funções

#. Funções
f <- function(x) x/10 + 1

f(x=10)
f(10)  # Chamada alternativa
f(4)

f<-function(x)
  x/10 + 1

# Com mais de uma variável
f1 <- function(x, y) {
  x/10 + 1 - y
}

f1(10, -1)
f1(y=-1, x=10)

# Criando uma função que se chama média
media <- function(x) {
  sum(x)/length(x)
}

media(rnorm(100))

# No fim dos argumentos, pode haver três pontos, representando todos os
# argumentos não especificados:
cv <- function(x) {
  sd(x)/mean(x) * 100
}

var1 <- rnorm(100)
cv(var1)

var1[50] <- NA
var1

cv(var1,
   na.rm=T)

cv1 <- function(x, ...) {
  sd(x, ...) / mean(x,...) * 100
}

cv1(var1,
    na.rm=TRUE)

# Elaborando uma função, e carregando-a para posterior uso!
source('cv.r')

cv(rnorm(100,
         10,
         2))