Introdu¸c˜ ao ao R
An´alise de dados e Simula¸c˜ao M´arcia D’Elia Branco
Apoio: Andressa Cerqueira (Aluna do Programa PAE)
lnterface do R
Novo script
Editor RStudio
Ajuda
A Ajuda do R ´e ´util para entender a finalidade de alguma fun¸c˜ao e para conhecer seus parˆametros.
Exemplos:
Obter ajuda sobre o comando “mean” help(”mean”) ou?mean Mostrar exemplo do comando “mean” example(mean)
Obter ajuda sobre o pacote “cluster” help(package=cluster)
Tipos de dados
Num´ericos valor <- 2 Caracteres string <- "Ol´a"
L´ogicos 2 < 4, 2 <= 4 Atribui¸c˜ao de valores:
valor <- 2 valor = 2 assign("valor", 2)
Comandos ´ uteis
Opera¸c˜oes matem´aticas:
Adi¸c˜ao 1 + 2 Subtra¸c˜ao 3−1 Multiplica¸c˜ao 2?3 Divis˜ao 6/2 Potencia¸c˜ao 3∧2 Fun¸c˜oes matem´aticas:
abs(x) valor absoluto de x log(x,a) logaritmo de x na base a
log(x) logaritmo natural de x
exp(x) e elevado a x
factorial(x) fatorial de x
round(x,n) arredonda x com n casas decimais ceiling(x) retorna o menor inteiro maior que x
floor(x) retorna o maior inteiro menor que x
Tipos de Objetos
Os tipos de objetos que ser˜ao mais utilizados s˜ao:
I Vetores
I Matrizes e arrays
I Data-frames
I Listas
I Fun¸c˜oes
mode(x) mostra o tipo de objeto de x is.numeric(x)
verifica o tipo de objeto is.vector(x)
is.matrix(x)
x ou print(x) mostra o conte´udo do objeto x
Vetores
x <- c(2,4,6,8) criar um vetor com os valores dados x[3] exibe a terceita entrada do vetor x <- 7:11 ou
cria a sequˆencia de 7 a 11 seq(7,11,1)
x <- rep(2,6) vetor com 6 repeti¸c˜oes do n´umero 2 sum(x) soma as entradas do vetor length(x) retorna o n´umero de entradas do vetor
Listas
As listas permitem a combina¸c˜ao de diferentes tipos de objetos em um mesmo objeto.
I x <- list(turma="A",notas=c(7,8.5,9,10,4,3)) : criar uma lista
I is.list(x) : verifica se o objeto x ´e uma lista
I x$turma : acessa o objeto turma da lista x
I names(x): lista o nome dos objetos de x
Matrizes
Matrizes
Matrizes - Opera¸c˜ oes
A∗B produto elemento a elementro de A e B A%∗% B produto matricial
t(A) matriz transposta At solve(A) matrix inversaA−1
diag(A) retorna a diagonal de A
Fun¸c˜ oes
nome_da_funcao <- function(argumento1,argumento2){
comandos da fun¸c~ao }
Exemplo:
#Essa fun¸c~ao simula "n" jogadas de uma moeda (x) jogar.moeda <- function(x,n){
sample(x,n,replace=T) }
moeda <- c("CARA", "COROA") jogar.moeda(moeda,10)
Fun¸c˜ oes
I Condicionais
if (condi¸c~ao) express~ao_1 else express~ao_2
> x <- 4
> if(x<6 & x>3) print("Verdadeiro") else print("Falso") [1] "Verdadeiro"
I Ciclos
while(condi¸c~ao){
Comandos }
for(condi¸c~ao){
Comandos }
Fun¸c˜ oes
# Experimento: "n" jogadas de uma moeda
# Repetimos esse experimento 1000 vezes
# Contamos o n´umero de caras em cada repeti¸c~ao do
# experimento e constru´ımos o histograma do n. de caras
# obtido.
f.caras <- function(n){
n.caras <- vector() for(i in 1:100){
jogadas <- jogar.moeda(moeda,n)
n.caras[i] <- sum(1*(jogadas == "CARA")) }
}
n.caras <- f.caras(10) hist(n.caras,freq=FALSE)
Fun¸c˜ oes
Fun¸c˜ oes
Comparando diferentes jogadas (n) por experimento
n=10
n.caras
Density
2 4 6 8
0.000.050.100.150.20
n=20
n.caras
Density
4 6 8 10 12 14 16
0.000.050.100.15
n=50
n.caras
Density
15 20 25 30 35
0.000.020.040.060.080.10
Fun¸c˜ oes
Algumas fun¸c˜oes ´uteis para simular vari´aveis aleat´orias.
Simular “n” valores da
rbinom(n, k, p) distribui¸c˜ao Binomial(k,p) rpois(n, lambda) distribui¸c˜ao Poisson(lambda)
rgeom(n, p) distribui¸c˜ao Geom´etrica(p) runif(n, a, b) distribui¸c˜ao Uniforme(a,b) rexp(n, lambda) distribui¸c˜ao Exponencial(lambda) rnorm(n, mean, sd) distribui¸c˜ao Normal(mean,sd2)
Fun¸c˜ oes
Exemplo: Gerar uma amostra aleat´oria da seguinte vari´avel aleat´oria
x 2 4 6
P(X =x) 0.6 0.3 0.1
Fun¸c˜ oes
An´ alise de dados
I Leitura de dados a partir de um vetor
I Leitura de dados a partir de um arquivo
read.table("endere¸co completo do arquivo de dados",h=T)
# h=T indica que a primeira linha dos dados possui o nome
# das colunas. Caso contr´ario, use h=F
# para mais informa¸c~oes sobre os par^ametros deste comando
# utilize help(read.table)
An´ alise de dados
O pacote Rcmdr ´e muito ´util para an´alise de dados no R.
Detalhes da utiliza¸c˜ao desse pacote ser˜ao apresentados nas aulas de estat´ıstica descritiva.