Mini curso
bajo el ambiente R
Villalta Desire Irene Garca
Noviembre, 2014
Agenda y tpicos
Nombres de variables y
Agenda Ayuda en los libros funciones
Descargar paquete R Ambiente R Clases y objetos
Ayuda en la web Ayuda en R Lectura de datos
Descarga
Ayuda en la web
Ayuda en libros
RStudio
RStudio es un Entorno de Desarrollo Integrado para R
RStudio
RStudio es un Entorno de Desarrollo Integrado para R
RStudio 1 Editor
La ventana 1 constituye el Editor, es el lugar donde se redactan y editan los
programas y scripts. Cuenta con la mayora de las facilidades de un editor
moderno: completacin de palabras, deniciones de objetos, ayudas
emergentes, bsquedas y reemplazos, etc. Adicionalmente cuenta con un
sistema para seccionar cdigos fuentes.
RStudio 2 Cnsola
La Consola, es el lugar donde se interacta con el interpretador del lenguaje
R. Al igual que el editor, la consola permite la completacin de palabras,
ayudas emergentes y es donde los programas redactados en el editor son
ejecutados. La consola identica el origen y propsito de cada comando o
mensaje.
RStudio 3 Ambiente e Historial (Panel A)
El panel 3 esta constituido por dos pestaas. Primero esta el Ambiente,
que muestra los objetos denidos. Estn clasicados en tres categoras: (1)
Data (cuadro de datos y matrices), (2) Valores (escalares, listas y objetos
varios) y (3) Funciones (lista de funciones denidas por el usuario). Por
otro lado, la pestaa de Historial presenta un diario de todos los comandos
ejecutados.
RStudio 3 Ambiente e Historial (Panel A)
El panel 3 esta constituido por dos pestaas. Primero esta el Ambiente,
que muestra los objetos denidos. Estn clasicados en tres categoras: (1)
Data (cuadro de datos y matrices), (2) Valores (escalares, listas y objetos
varios) y (3) Funciones (lista de funciones denidas por el usuario). Por
otro lado, la pestaa de Historial presenta un diario de todos los comandos
ejecutados.
RStudio 4 Panel B
Este panel esta constituido por 4 pestaas: Archivos (Files), es un
navegador de archivos. Gracas (Plots), este panel contiene todas las
grcas que se construyen. Paquetes (Packages), travs de esta pestaa
es posible administrar los paquetes y/o libreras. Ayuda (Help), la pestaa
ms importante, contiene todas las pginas de ayuda y manuales de
referencia.
RStudio 4 Panel B
Este panel esta constituido por 4 pestaas: Archivos (Files), es un
navegador de archivos. Gracas (Plots), este panel contiene todas las
grcas que se construyen. Paquetes (Packages), travs de esta pestaa
es posible administrar los paquetes y/o libreras. Ayuda (Help), la pestaa
ms importante, contiene todas las pginas de ayuda y manuales de
referencia.
RStudio 4 Panel B
Este panel esta constituido por 4 pestaas: Archivos (Files), es un
navegador de archivos. Gracas (Plots), este panel contiene todas las
grcas que se construyen. Paquetes (Packages), travs de esta pestaa
es posible administrar los paquetes y/o libreras. Ayuda (Help), la pestaa
ms importante, contiene todas las pginas de ayuda y manuales de
referencia.
RStudio 4 Panel B
Este panel esta constituido por 4 pestaas: Archivos (Files), es un
navegador de archivos. Gracas (Plots), este panel contiene todas las
grcas que se construyen. Paquetes (Packages), travs de esta pestaa
es posible administrar los paquetes y/o libreras. Ayuda (Help), la pestaa
ms importante, contiene todas las pginas de ayuda y manuales de
referencia.
Ayuda
Solicitar ayuda sobre un tpico se puede hacer directamente en la pestaa
de Ayuda (Help) o a travs de la consola:
1 ? var
2 ?? mean
3 help ( mean )
4 %apropos ( " sort " )
Los comandos ? <comando> y help(<comando>) despliegan la ayuda de
<comando>, mientras que los comandos ?? <comando> y
apropos(``<comando>'') mustran una lista de posibles tpicos relacionados a
<comando>.
Nombres de variables y funciones
Al denir una variable o funcin hay que tomar en cuenta:
1 No puede empezar por un dgito y contener caracteres especiales
, +, , /, ?, &, #, $, (, [, {, :, etc. . .
Nombres aceptados tabla4, HrMin, [Link], . . .
Nombres no aceptados 4tabla, hr+min, bal?pres, ...
2 Debe ser concisa e informativa:
Uso Nombre
Variable temporal tmp 3
VariableDeUsoTemporal 7
3 Se sugiere no utilizar nombres que pueden confundirse con comandos
c Concatenacin
t Transpuesta
T Valor lgico verdad, TRUE
F Valor lgico falso, FALSE
IMPORTANTE!!!!!
En R, se diferencian puntos (.) de comas (,) (3,17 6= 3.17).
La coma (,) se usa para separar valores, en cambio el punto se relaciona
con decimales, por ejemplo a= c(2.2, 13, 1.8, 4, 9).
Se diferencian letras maysculas de minsculas. Por ejemplo:
a= 3+2
A= 4*7
Clases fundamentales de R
Numrico Comprende los nmeros enteros (-5, 0, 315) y punto o-
tantes (0.5, 1.333)
Lgico Comprende los valores Verdad (TRUE T), Falso (FALSE
F) y No disponible NA
Carcter Son las letras y palabras, estn delimitados por comillas
("). Ejemplo "Z", "Cadena"
Factor Representacin de factores y pueden estar en cualquier
clase anterior (nmero, letra o lgico)
Frmula Describen modelos, tiene sintaxis propia con lado derecho
y lado izquierdo, separados por tilde (~). Ejemplo: y~x-1
Vector
Matriz
Arreglo
Tabla data.frame1 y tablas de contingencia
1 Estos objetos pueden a su vez estar conformados por 1 o ms clases.
Operadores
Vectores
Para construir vectores, se usa el comando concatenar: c().
edad = c(2, 30, 23, 33, 28, 45, 34, 55, 67, 28, 35, 35, 36, 98)
sexo = c("F", "F", "M", "M","F", "M", "M","F", "F","F", "F","M","F",
"M").
Para el vector edad podemos calcular:
min(edad): valor mnimo del vector.
max(edad): valor mximo del vector.
sort(edad): ordena el vector de menor a mayor.
var(edad): varianza del vector
sd(edad): desviacin estndar del vector.
length(edad): tamao del vector.
Algunos de estos comandos se pueden resumir con el comando summary(edad).
Vectores
La salida de la cnsola es:
Grcas en R
Algunas grcas importantes son:
Histogramas hist(edad)
Diagrama de caja o boxplot boxplot(edad)
En R se escribe como:
hist(edad, main = "Histograma de edades de los pacientes \n
hembras y varones", ylab = "Frecuencia", ylim= c(0, 10))
Histograma de edades de los pacientes
hembras y varones
10
8
Frecuencia
6
4
2
0
0 20 40 60 80 100
Edad
Vectores
1 par ( mfrow = c (1 , 2) )
2 boxplot ( edad )
3 boxplot ( edad , col = " orange " , horizontal = T )
100
80
60
40
20
0
0 20 60 100
Boxplot
El boxplot o diagrama de caja sirve para representar la distribucin de una
variable continua y muestra en un mismo grco la mediana, los
percentiles, valores atpicos, dispersin.
Permite comparar grcamente los diferentes grupos de una misma variable
Boxplot
Para relacionar variables numricas y categricas, se puede usar en el
split
boxplot el comando
boxplot(split(edad,sexo), ylab=Edad", col=
c("pink","purple"))
100
80
60
Edad
40
20
0
F M
Vectores: variables categricas
sexo = c("F", "F", "M", "M","F", "M", "M","F", "F","F", "F","M","F",
"M")
1 > s = factor ( sexo )
2 > class ( s )
3 [1] " factor "
4 > summary ( s )
5 F M
6 8 6
7 > plot ( s )
8
6
4
2
0
F M
Acceso a los elementos
Acceso a los elementos de un vector [ndice de posicin]
El acceso de los elementos se efecta a travs del comando [ ]
1 > A <- c (10 , 20 , 30 , 40 , 50)
2 > A [1]
3 10
4 > A [3:5]
5 30 40 50
6 > A [ c (4 , 2 , 5 , 1 , 3) ]
7 40 20 50 10 30
8 > A [10]
9 NA
Acceso por ndice de posicin: cuando se indica la posicin del elemento
dentro del vector a ser accedido.
Acceso a los elementos
Otra forma de acceder a los elementos es a travs de los ndices lgicos
Acceso a los elementos de un vector [ndice lgico]
Al igual que el caso anterior se usa el comando [ ]
1 > A <- c (10 , 20 , 30 , 40 , 50)
2 > (p <- A == 20)
3 FALSE TRUE FALSE FALSE FALSE
4 > A[p]
5 20
6 > A[A >= 20]
7 20 30 40 50
8 > A[A > 100]
9 NA
10 g <- 1 : 5
11 > A[g == 3]
12 30
Acceso a los elementos
Ejemplo
1 > edad [ sexo == "F "]
2 [1] 2 30 28 55 67 28 35 36
3 > edad [ edad >50]
4 [1] 55 67 98
5 > edad [ edad >30 & sexo == "M" ]
6 [1] 33 45 34 35 98
7 > sexo [ edad <= 30 | edad >80]
8 [1] "F " "F " "M" "F" "F" "M"
Lectura de datos
R cuenta con una gran gama de comandos para leer y cargar archivos de
datos, entre los ms usuales estn
[Link] Lee archivos de datos en formato libre
[Link] Lee hoja de clculos donde los datos estn separados por
comas (,) y decimales por puntos (.)
read.csv2 Lee hoja de clculos donde los datos estn separados por
punto y comas (;) y decimales por comas (,)
[Link] Vaca una hoja de calculo XLSX en una tabla. Requiere de la
librera xlsx.
Lectura de datos: [Link]
1 datos = read . table ( " datos _ rest . txt " , header = T )
2 attach ( datos )
3 names ( datos )
4 >[1] " sexo " " sopa " " plato " " postre " " llegada "
" consumo "
5 par ( mfrow = c (2 , 2) )
6 hist ( consumo , main = " Consumo " )
7 plot ( plato , main = " Tipo de plato " )
8 plot ( postre , main = " Tipo de postre " )
9 plot ( llegada , main = " Llegada al restaurant " )
Consumo Tipo de plato
Frequency
15
8
4
0 5
0
300 500 700 900 carne pez pollo
consumo
Tipo de postre Llegada al restaurant
14
5 10
0 4 8
0
helado quesillo torta carro pie
Lectura de datos: [Link]
1 par ( mfrow = c (2 , 2) )
2 boxplot ( split ( consumo , postre ) , main = " boxplot ( split (
consumo , postre ) ) " )
3 boxplot ( split ( consumo , plato ) , main = " boxplot ( split (
consumo , plato ) ) " )
4 boxplot ( split ( consumo , llegada ) , main = " boxplot ( split (
consumo , llegada ) ) " )
5 boxplot ( split ( consumo , sopa ) , main = " boxplot ( split (
consumo , sopa ) ) " )
boxplot(split( consumo, postre)) boxplot(split( consumo, plato))
400 600 800
400 600 800
helado quesillo torta carne pez pollo
boxplot(split( consumo, llegada)) boxplot(split( consumo, sopa))
400 600 800
400 600 800
carro pie FALSE TRUE