You are on page 1of 19

R: Un auto-aprender tutorial

1 Introduccin
R es un lenguaje de software para llevar a cabo complicados (y simple) el
anlisis estadstico. Incluye rutinas para resumen de datos y la exploracin,
la presentacin grfica y el modelado de datos. El objetivo de este
documento es proporcionar a usted con una base mayor fluidez en el
idioma. Se sugiere que usted trabaja a travs de este documento en el
ordenador, habiendo iniciado una sesin R. Escribir todos los comandos que
se imprimen, y asegurarse de que entiende cmo funcionan. A continuacin,
pruebe los ejercicios sencillos al final de cada seccin.
Cuando trabajas en R se crean objetos que se almacenan en el rea de
trabajo actual( a veces llamada image). Cada objeto creado permanece en
la imagen, a menos que explcitamente se elimine. Al final de la sesin el
rea de trabajo se perdern a menos que lo guarde. Puede guardar el
espacio de trabajo en cualquier momento haciendo clic en el icono de disco
en la parte superior del panel de control.
Comandos escritos en R se guardan en la memoria durante toda la sesin.
Puede desplazarse hacia atrs los comandos usando la tecla de flecha
"arriba" y "abajo" para desplazarse de nuevo). Tambin puede 'Copiar' y
'Pegar' utilizando tcnicas editor estndar de Windows (por ejemplo, usando
el 'Copiar' y 'Pegar' botones de dilogo). Si en cualquier momento desea
guardar la transcripcin de la sesin, haga clic en "Archivo" y luego
"Guardar historial", que le permitir guardar una copia de los comandos que
se han utilizado para su uso posterior. Como alternativa, puede copiar y
pegar comandos manualmente en un editor de Bloc de notas o algo similar.
Termine un r la sesin escribiendo
> q(),
punto en el cual tambin se le pedir si o no usted desea guardar el espacio
de trabajo actual si no se perdern.
2 Objetos y aritmtica
R almacena la informacin y funciona sobre objetos. El ms simple de los
objetos son escalares, vectores y matrices.
Pero hay muchos otros: listas y dataframes por ejemplo. En el uso avanzado
de la R tambin puede ser til para definir nuevos tipos de objeto,
especficos para cada aplicacin particular. Nos limitaremos slo con los
objetos ms utilizados aqu.
Una caracterstica importante de R es que va a hacer cosas distintas en
diferentes tipos de objetos. Por ejemplo, escriba:1
> 4+6
El resultado debera ser
[1] 10

Por lo tanto, R no aritmtica escalar devolviendo el valor escalar 10. (En


realidad, R devuelve un vector de longitud 1 - de ah el [1] que denota el
primer elemento del vector.
Podemos asignar objetos valores para su uso posterior. Por ejemplo:
x<y<-6 -4 z<-x+y
1adoptamos la convencin de usar tipografa font para denotar cosas
escritas en R. El> firmar no est escrito; sin embargo, denota el smbolo
"mayor que".
1

hara el mismo clculo anterior, almacenando el resultado en un objeto


llamado z. Podemos mirar el contenido del objeto simplemente escribiendo
su nombre: de
Z [1] 10
en cualquier momento podemos enumerar los objetos que hemos creado:
> ls() [1] "x" "y", "z"
Observe que ls es en realidad un objeto en s mismo. Escribir ls se traducira
en una visualizacin de los contenidos de este objeto, en este caso, los
comandos de la funcin. El uso de parntesis, ls(), asegura que la funcin es
ejecutada y su resultado -en este caso, una lista de los objetos del directorio
- muestra.
Ms comnmente una funcin operar en un objeto, por ejemplo
> sqrt(16) [1] 4
calcula la raz cuadrada de 16. Los objetos se pueden eliminar desde el rea
de trabajo actual con therm funcin:
> rm(x,y), por ejemplo.
Hay muchas funciones estndar disponibles en R, y tambin es posible crear
nuevos.
Vectores pueden crearse en R en un nmero de maneras. Podemos describir
todos los elementos:
> z<-c(5,9,1,0)
Observe el uso de la funcin c para concatenar o "pegamento" de
elementos individuales. Esta funcin puede utilizarse mucho ms
ampliamente, por ejemplo
> x<-c(5,9) > y <-c(1,0) > z<-c(x,y)

conducira al mismo resultado mediante encolado juntos dos vectores para


crear un nico vector.
Se pueden generar secuencias de la siguiente manera:
> x<-1:10
mientras que las secuencias ms generales se pueden generar utilizando el
comando seq. Por ejemplo:
> seq(1,9,por=2) [1] 1 3 5 7 9
y
> seq(8,20,longitud=6) [1] 8.0 10.4 12.8 15.2 17.6 20.0
Estos ejemplos ilustran que muchas funciones en R tienen argumentos
opcionales, en este caso, la longitud del paso o la longitud total de la
secuencia (no tiene sentido usar ambos). Si deja fuera ambas opciones, R
har su propia eleccin por defecto, en este caso, suponiendo una longitud
de paso de 1. As, por ejemplo,
2

> X<-seq(1,10)
genera tambin un vector de nmeros enteros del 1 al 10.
En este punto vale la pena mencionar thehelp facility. Si usted no sabe
cmo utilizar una funcin, o no se sabe cules son las opciones o valores
predeterminados son, typehelp(functionname) donde la funcin- es el
nombre de la funcin que le interesa. Esto suele ayudar y a menudo se
incluyen ejemplos para hacer las cosas an ms claras.
Otra funcin til para la construccin de los vectores es la rep mando para
repetir las cosas. Por ejemplo
> rep(0,100) [1] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 [38] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 [75] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
o
> rep(1:3,6) [1] 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 Aviso tambin una
variacin en el uso de esta funcin
> rep(1:3,c(6,6,6)) [1] 1 1 1 1 1 1 2 2 2 2 2 2 3 3 3 3 3 3
que tambin podramos simplificar inteligentemente como
> rep(1:3,rep(6,3) [1] 1 1 1 1 1 1 2 2 2 2 2 2 3 3 3 3 3 3

Como se ha explicado anteriormente, R suelen adaptarse a los objetos es


solicitado para trabajar. Por ejemplo:
> x<-c(6,8,9) > y <-c(1,2,4) > x+y [1] 7 10 13
y > x*s [1] 6 16 36 muestra que R utiliza aritmtica componentwise sobre
vectores. R tambin intentar hacer sentido si los objetos estn mezclados.
Por ejemplo,
> x<-c(6,8,9) > x+2 [1] 8 10 11
aunque se debe tener cuidado para asegurarse de que R est haciendo lo
que le gustara que en estas circunstancias.
Dos particularmente tiles funciones que vale la pena recordar arelength
que devuelve la longitud de un vector (es decir, el nmero de elementos
que contiene) andsum que calcula la suma de los elementos de un vector.
3

ejercicios
1. Definir
> x<-c(4,2,6) > y <-c(1,0,-1)
Decidir cul ser el resultado de las siguientes:
(a) longitud(x) (b) suma(x) (c) suma(x^2) (d) x+y (e) y (f*x) x-2 (g) x^2
Utilice R para comprobar sus respuestas.
2. Decidir cules son las siguientes secuencias y utilizar R para verificar sus
respuestas:
(a) 7:11 (b) seq(2,9) (c) seq(4,10,por=2) (d) seq(3,30,longitud=10) (e)
SEC(6,-4,por=-2)
3. Determinar cul ser el resultado de las siguientes expresiones R y, a
continuacin, utilizar R para verificar que son correctas:
(a) La Rep(2,4) b) Rep(c(1,2),4) (c) Rep(c,c(1,2)(4,4)) (d) Rep(1:4,4) (e)
Rep(1:4,rep(3,4))
4. Utilice la funcin de rep para definir simplemente los siguientes vectores
en R.
6,6,6,6,6,6 (a)
(b) (c) 5,5,5,5,8,8,8,8 5,8,5,8,5,8,5,8
4

3 resmenes y Subscripting
supongamos que hemos recogido algunos datos de un experimento y se
almacenan en un objectx:
> x<-c(7.5,8.2,3.1,5.6,8.2,9.3,6.5,7.0,9.3,1.2,14.5,6.2)
algunos simples estadsticas de resumen de estos datos puede ser
producido:
> significa(x) [1] 7.216667 > var(x) [1] 11.00879 > Resumen(x) Min.
1 Qu. Mediana Media 3 Qu. Max.
1.200 6.050 7.250 7.217 8.475 14.500
que deben ser auto-explicativa. Sin embargo, es posible que posteriormente
hemos aprender que los 6 primeros datos corresponden a las mediciones
efectuadas en una mquina, y la segunda, seis en otra mquina.
Esto podra sugerir que resume los dos conjuntos de datos por separado,
por lo que necesitaramos para extraer desde x los dos subvectors
pertinentes. Esto se logra mediante la subscripting:
> x[1:6]
y
> x[7:12]
dar las correspondientes subvectors. Por lo tanto,
> Resumen(x[1:6]) Min. 1 Qu. Mediana Media 3 Qu. Max.
3.100 6.075 7.850 6.983 8.200 9.300 > Resumen(x[7:12]) Min. 1 Qu.
Mediana Media 3 Qu. Max.
1.200 6.275 6.750 7.450 8.725 14.500
otros subconjuntos pueden ser creados de una manera obvia. Por ejemplo:
> x[c(2,4,9)] [1] 8.2 5.6 9.3
enteros negativos se pueden utilizar para excluir determinados elementos.
Por ejemplo,
x[-(1:6)]
tiene el mismo efecto que x[7:12].
Ejercicios
1. Si x<- c(5,9,2,3,4,6,7,0,8,12,2,9) decida qu cada uno de los siguientes
enunciados y utilizar R para verificar sus respuestas:

(a) x[2] (b) x[2:4] (c) x[c(2,3,6)]


5

(d) x[c(1:5,10:12)]
(e) x[-(10:12)
.] 2. Los datos y<-c(33,44,29,16,25,45,33,19,54,22,21,49,11,24,56)
contienen las ventas de leche en litros durante 5 das en tres diferentes
tiendas (los 3 primeros valores son para tiendas 1,2 y 3 el lunes, etc.)
producen un resumen estadstico de las ventas para cada da de la semana
y tambin para cada tienda.
4 matrices
matrices pueden ser creados en R en una variedad de maneras. Quizs la
ms sencilla es crear las columnas y, a continuacin, pegarlas con el
comando cbind. Por ejemplo,
> x<-c(5,7,9) > y <-c(6,3,4) ><-cbind z(x,y) > x y z [1, 5] 6
[2] 7 3 [3] 9 4
La dimensin de una matriz se puede comprobar con el comando
> thedim dim(z) [1] 3 2
es decir, tres filas y dos columnas. Hay un comando similar, rbind, para la
construccin de matrices por filas de encolado juntos.
Las funciones cbind y rbind puede aplicarse tambin a las matrices a s
mismos (siempre y cuando el di- mensions match) para formar matrices
ms grandes. Por ejemplo,
> rbind(z,z) [,1] [,2] [1] 5 6 [2] 7 3 [3] 9 4 [4] 5 6 [5, 7], 3 [6] 9 4
Matrices tambin pueden ser construidos por construccin explcita
mediante la funcin Matriz. Por ejemplo,
z<-matrix(c(5,7,9,6,3,4),nrow=3) se
traduce en una matriz z z idntico al anterior. Observe que la dimensin de
la matriz se determina por el tamao del vector y el requisito de que el
nmero de filas es 3, especificado por el argumento nrow=3. Como
alternativa, podramos haber especificado el nmero de columnas con el
argumento ncol=2 (obviamente, es innecesario dar a ambas). Observe que
la matriz se rellena la columna 'arriba'-wise. Si desea rellenar la fila-sabio,
agregue la opcin byrow=T. Por ejemplo,
6

> z<-matrix(c(5,7,9,6,3,4),nr=3,byrow=T) > z [,1] [,2] [1] 5 7 [2] 9 6


[3] 3 4
aviso que el argumento nrow ha abreviado a nr. Tales abreviaciones son
siempre posibles para los argumentos de la funcin siempre induce ninguna
ambigedad - en caso de duda, utilice siempre el argumento full name.
Como de costumbre, R intentar interpretar operaciones con matrices en
forma natural. Por ejemplo, withz como arriba y
> y <-matrix(c(1,3,0,9,5,-1),nrow=3,byrow=T) > y [,1] [,2] [1, 1], 3
[2] 0 9 [3] 5 -1
obtenemos
> y+z [,1] [,2] [1], 6 [2, 10] 9 [3, 15] 8 3
y > y*z [,1] [,2] [1, 5] 21 [2], 0 [3, 54] 15 -4
Aviso, aqu es componentwise multiplicacin en lugar de multiplicacin de
matrices convencionales. De hecho, la multiplicacin de matriz convencional
es undefined fory y z como las dimensiones no coinciden.
Ahora vamos a definir
> x<-matrix(c(3,4,-2,6),nrow=2,byrow=T) > x [,1] [,2] [1] 3 4 [2] 6
: -2%% multiplicacin de matrices se expresa mediante una notacin
[,1] [,2] [1] [2, 22 -3 -18] 54 [3] 17 14 x%%y >
7

Otras funciones tiles en matrices son t para calcular una matriz de


transposicin y resolver para calcular inversas:
> T(z) [,1] [,2] [,3] [1] 5 9 3 [2] 7 6 4

> solucionar y(x) [,1] [,2] [1], 0.23076923 -0.1538462 [2], 0.07692308
0.1153846
como con vectores es til para poder extraer los subcomponentes de
matrices. En este caso, queremos destacar elementos individuales, filas o

columnas. Como antes, el[ ] se utiliza la notacin de subndice. Los


siguientes ejemplos deben dejar las cosas claras:
> z[1,1] [1] 5
> z[c(2,3),2] [1] 6 4 > z[,2] [1] 7 6 4 > z[1:2] [,1] [,2] [1] 5 7 [2] 9 6
As, en particular, es necesario especificar las filas y columnas que son
necesarias, aunque omitiendo el nmero entero para ambas dimensiones
implica que cada elemento en esa dimensin est seleccionado.
Ejercicios
1. Crear en R las matrices
"#
3 2 x = -1 1
y
"#
1 4 0 y = 0 1 -1
Calcular las siguientes y comprobar tus respuestas en R:
x%%x (a) 2*x (b) x*x (c)

y 8%%x (d)
(e) t(y) (f) resolver(x) 2. Con x e y como en el caso anterior, calcular el
efecto de las siguientes operaciones de subndice y comprobar tus
respuestas en R.
(a) x[1], (b) x[2], (c) x[,2] (d) y[1,2] (e) y[,2:3]
5 Asociar a objetos
R incluye un nmero de conjuntos de datos que es conveniente utilizar para
ver ejemplos. Puede obtener una descripcin de lo que est disponible
escribiendo
> Datos()
para acceder a cualquiera de estos conjuntos de datos, que luego
typedata(dataset dataset) donde es el nombre del conjunto de datos a la
que desea acceder. Por ejemplo,
> Datos(rboles)

escribiendo
> rboles[1:5] altura circunferencia Volumen 1 8.3 70 2 65 10.3 10.3 8.6
3 8.8 63 10.2 10.5 16.4 5 4 72 10,7 81 18,8
nos da las 5 primeras filas de estos datos, y ahora podemos ver que las
columnas representan las mediciones de circunferencia, altura y volumen de
rboles (cerezos realmente: seehelp(rboles), respectivamente.
Ahora, si queremos trabajar en las columnas de estos datos, podemos
utilizar la tcnica subscripting explicado anteriormente: por
ejemplo,rboles[,2] da a todas las alturas. Esto es un poco tedioso y, sin
embargo, sera ms fcil si pudiramos consultar a las alturas de forma ms
explcita. Esto lo podemos lograr mediante la asociacin a los rboles
dataset:
> Adjuntar(rboles)
Efectivamente, esto hace que el contenido de un directorio y oftrees si
escribimos el nombre de un objeto, R buscar dentro de este directorio para
encontrarlo. Desde la altura es el nombre de una de las columnas de
rboles, R reconoce ahora este objeto cuando nos escriba el nombre. De ah
que, por ejemplo,
> significa(Altura) [1] 76
y
9

> significa(rboles[,2]) [1] 76


son sinnimos, aunque es ms fcil recordar exactamente qu clculo se
realiza por la primera de estas expresiones. En realidad, los rboles es un
objeto llamado una trama de datos, esencialmente una matriz con el
nombre de columnas (aunque una trama de datos, a diferencia de una
matriz, tambin puede incluir variables no numricos, como los nombres de
los personajes). Debido a esto, existe otra sintaxis equivalente a extraer,
por ejemplo, el vector de las alturas:
> rboles$Altura
que tambin pueden ser utilizados sin haber conectado al conjunto de
datos.
Ejercicios
1. Adjuntar al dataset sismos y producir un resumen estadstico de las
variables de profundidad y mag.

2. Adjuntar al dataset mtcars y encontrar el peso promedio y la media de


consumo de combustible para vehculos en el dataset (escriba help(mtcars)
para obtener una descripcin de las variables disponibles).
6 La funcin de aplicar
es posible escribir bucles en R, pero es mejor evitarlos siempre que sea
posible. Una situacin comn es donde queremos aplicar la misma funcin
para cada fila o columna de una matriz. Por ejemplo, nosotros podemos
querer encontrar el valor medio de cada variable thetrees dataset.
Obviamente, podemos operar en cada columna por separado, pero esto
puede ser tedioso, especialmente si hay muchas columnas.
Aplicar la funcin simplifica las cosas. Lo ms fcil es entendido por
ejemplo:
> Aplicar(rboles,2,media) Circunferencia Altura 13.24839 76.00000
30.17097 volumen
tiene el efecto de calcular el promedio de cada columna (dimensin 2) de
rboles. Tendramos que haber utilizado un 1 en lugar de un 2 si queramos
que el promedio de cada fila.
Cualquier funcin puede ser aplicada de esta manera, aunque si los
argumentos opcionales de la funcin son necesarios estos deben ser
especificados como bien - consulte la ayuda(Aplicar) para ms detalles.
Ejercicio
1. Repetir los anlisis de los datasets de sismos y mtcars utilizando la
funcin aplicar para simplificar los clculos.
2. Si
"#
1 4 1 y = 0 2 -1
Cul es el resultado de aplicar(y[,2:3],1,media)? Verifique su respuesta en
R.
10

7 computacin estadstica y simulacin


muchos de los tediosos clculos estadsticos que alguna vez tena que
haberse hecho en los cuadros estadsticos se puede llevar a cabo fcilmente
en R. Esto puede ser til para encontrar los intervalos de confianza, etc.
tomemos como ejemplo la distribucin normal. Hay funciones en R para
evaluar la funcin de densidad, la funcin de distribucin y la funcin cuantil

(el inverso de la funcin de distribucin). Estas funciones son,


respectivamente,dnorm, pnorm y qnorm. A diferencia de lo que ocurre con
las tablas, no hay necesidad de estandarizar las variables primero. Por
ejemplo, supongamos que X N(3, 22) y, a continuacin,
> dnorm(x,3,2)
calcula la funcin de densidad en los puntos contenidos en el vector x (nota,
dnorm asumir media 0 y desviacin estndar 1, a menos que estos sean
especificados. Tambin tenga en cuenta que la funcin supone que dar la
desviacin estndar en lugar de la varianza. Como ejemplo
> dnorm(5,3,2) [1] 0.1209854
evala la densidad del N(3, 4) la distribucin en x = 5. Como un ejemplo
adicional > x<-seq(-5,10,por=.1) > dnorm(x,3,2)
calcula la funcin de densidad de la misma distribucin en intervalos de 0,1
en el intervalo [-5, 10].
Las funciones pnorm qnorm y trabajar de manera idntica - usehelp para
ms informacin.
Existen funciones semejantes para otras distribuciones. Por ejemplo,DT, pt y
QT para la distribucin t, aunque en este caso es necesario dar los grados
de libertad en lugar de la media y la desviacin estndar. Otras
distribuciones disponibles incluyen el binomial, Poisson, exponencial y
gamma, aunque cuidado se necesita interpretar las funciones para las
variables discretas.
Otra tcnica importante para muchas aplicaciones estadsticas es la
simulacin de datos de distribuciones de probabilidad especificada. R
permite la simulacin de una amplia variedad de distribuciones, utilizando
una sintaxis similar a la de arriba. Por ejemplo, para simular 100
observaciones desde entonces(3, 4) distribucin escribimos >
rnorm(100,3,2)
Igualmente,rt, rpois para la simulacin de la t y distribuciones de Poisson,
etc.
ejercicios
1. Supongamos X N(2, 0.25). Denotan por F y F la densidad y distribucin
de funciones de X, respectivamente. Utilice R para calcular
(a) f(0,5) b) F(2,5) (c) F -1(0,95) (recordar que F -1 es la funcin cuantil) (d)
Pr(1 X 3)
2. Repita la pregunta 1 En el caso de que X tiene una distribucin t con 5
grados de libertad.
3. Utilice la funcin rpois para simular 100 valores de una distribucin de
Poisson con un parmetro de su propia eleccin. Producir un resumen
estadstico de los resultados y verificar que la media y la varianza
concuerdan razonablemente con los verdaderos valores de la poblacin.
4. Repita la pregunta anterior reemplazando rpois con rexp.

11

8 grficos
R tiene muchas instalaciones para producir grficos de alta calidad. Antes
de comenzar una funcin til es dividir una pgina en trozos pequeos con
el fin de que ms de una figura puede ser visualizada. Por ejemplo:
> par(mfrow=c(2,2))
crea una ventana de grficos con 2 filas y 2 columnas. Con esta eleccin, las
ventanas estn llenas de altura histograma
arriba row-wise. Utilice mfcol en lugar de
10mfrow para llenar la columna-wise. La funcin 85 es un par
8 80 general funcin 6 para el ajuste de parmetros de la grfica. Hay
muchas opciones: consulte 75 help(par).
Frecuencia 4 70 2
65 0 60 65 70 75 80 85 90
altura
histograma de volumen
10 70 8 60
6 50
40 4 Frecuencia 30 2 20
0 10 10 20 30 40 50 60 70 80 El
volumen
Figura 1: rbol alturas y volmenes, de
manera que, por ejemplo
> par(mfrow=c(2,2))
> hist(Altura)
> diagrama de caja(Altura)
> hist(Volumen)
> diagrama de caja (volumen)
> par(mfrow=c(1,1)

produce la figura ?? . Nota El uso final de par 70 para volver a la ventana de


grficos de tamao estndar.
60
50
Volumen40
30
20
10
65 70 75 80 85

Figura 2: Trazado de dispersin de la altura de los rboles de alturas y


volmenes
tambin podemos trazar una contra otra variable utilizando la funcin
parcela :
> parcela(altura,Volume)
12

Cintura
85
80
75
70
65
8 10 12 14 16 18 20
Figura 3: Scatter Plot Matrix para
ver la figura ?? .
R tambin puede producir un Scatter Plot Matrix (Matriz de scatterplots para
cada par de variables)
utilizando la funcin de pares :
> pares(rboles),
vase la figura ?? . Al igual que muchas otras funciones parcela

objeto al que se aplica. Por ejemplo, si el objeto es una matriz,


plot(rboles) . Para algunas otras posibilidades intente:
> Datos(nhtemp)
> parcela(nhtemp)
> Datos(fiel)
> parcela(fiel)
> Datos(HairEyeColor)
> parcela(HairEyeColor)
tambin hay muchos argumentos opcionales en la mayora de
especificacin de funciones que se pueden utilizar para controlar
los colores, trazando caracteres, rtulos, ttulos, etc. Las funciones
aadir puntos y lneas respectivamente a un grfico actual. La funcin de
una lnea con el intercepto y la pendiente especificada.
Para imprimir un grfico, coloque el cursor sobre la ventana de grficos y
pulse el botn derecho del ratn
. Esto debera abrir un men que incluye 'Imprimir' como una opcin. Usted
tambin tiene la opcin
de guardar la figura en varios formatos, como por ejemplo un archivo
postscript, para almacenamiento y uso posterior.
Ejercicios
1. Utilice
> x<-rnorm(100)
o algo similar, para generar algunos datos. Producir una ilustracin que
muestra un histograma y
diagrama de caja de los datos. Modificar los nombres de ejes y el ttulo de la
parcela en una manera apropiada.
2. Escriba el siguiente
65 70 75 80 85
20 18 16 14 12 10 8

70 60 50 Altura Volumen
40 30 20 10 10 20 30 40 50 60 70
datos de rbol
es especfica del objeto: su comportamiento depender de la

parcela es idntica a pares : intente


puntos y lneas son tiles para
abline es til para agregar
13

> x<-- (-10):10 > n<-length(x) > y <-rnorm(n,x,4) >


plot(x,y) > abline(0,1)
intenta comprender el efecto de cada comando y el grfico en el que se
produce.
3. Escriba los siguientes
datos: >(nhtemp) > parcela(nhtemp)
Esto produce una parcela de series de tiempo de las mediciones de la
temperatura media anual en Nueva Hamp- shire, EE.UU.
4. El ejemplo anterior ilustra que la parcela acta de forma diferente sobre
objetos de diferentes tipos: el objeto nhtemp tiene la clase especial de
series de tiempo. De manera ms general, podemos tener los datos de
observaciones anuales en un vector, pero necesario para construir el
trazado de series de tiempo para nosotros mismos. Podemos imitar esta
situacin escribiendo ><-temp como.vector(nhtemp)
que crea un vector temp que contiene slo las temperaturas anuales.
Podemos producir algo similar a la de series de tiempo escribiendo
> parcela parcela(1912:1971,temp)
pero esto dibuja puntos en vez de lneas. Unir los datos a travs de lneas
que usaramos
> parcela(1912:1971,temp,type='l') en su lugar. Para obtener puntos y
lneas, usetype='b' en su lugar.
9 funciones de escritura de
una caracterstica importante de R es la posibilidad de ampliar el lenguaje
por escribir sus propias funciones.
Por ejemplo, aunque hay una functionvar que permitir calcular la varianza
de un conjunto de datos en un vector, no existe ninguna funcin para el
clculo de la desviacin estndar. Podemos definir esa funcin como sigue:
> <- sd(x) La funcin sqrt(var(x))
Entonces, por ejemplo, si x<-c(9,5,2,3,7)

> sd(x) [1] 2.863564


14

si queremos cambiar la funcin, el commandfix(SD) abrir la funcin en un


editor que podemos utilizar para modificarla. En realidad, podramos haber
utilizado este formulario tambin para definir la funcin de SD. Si la funcin
no existe, el efecto es abrir un editor que contiene la plantilla de funcin () {
}
que puede utilizar para insertar el cuerpo de la funcin, el editor haciendo
fcil para realizar inserciones y correcciones. Tenga en cuenta que las llaves
habilitar varias lneas de comandos que se incluye en la funcin. Por
ejemplo, podramos escribir
fix(varios.parcelas)
y, a continuacin, utilice el editor para definir la funcin:
varios.parcelas<-function(x){ par(mfrow=c(3,1) hist(x[,1]) hist(x[,2])
plot(x[,1,x][,2]) par(mfrow=c(1,1) aplicar(x,2,resumen) }
El resultado de la funcin est indicado en la lnea final. Las lneas
anteriores son considerados slo como intermediario, aunque salida grfica
tambin ser enviado a la pantalla si est incluido. Esta funcin particular
-que slo tiene sentido si x es una matriz con dos columnas: produce un
histograma de cada columna y un
histograma de x[ 1] Scatter plot de una columna contra el otro. Por ltimo,
se devuelve un resumen de cada columna.
60 Para imprimir el contenido de una funcin, utilice
40 fix para abrir una ventana editor que contiene el cuerpo de la
frecuencia 20 de la funcin y, a continuacin, haga clic en 'Archivo' e
'Imprimir'. 0 2 3 4 5
x[ 1]
Histograma de x[ 2]

Frecuencia 50 30 10 0 40 50 60 70 80 90 100
x[ 2]
90
70 x[,]

50 2
1,5 2,0 2,5 3,0 3,5 4,0 4,5 5,0
x[ 1]
Figura 4: Salida de varias parcelas.De
ah que, por ejemplo
> Varios.parcelas(fiel)
erupciones
min de espera. 1.600 43.0
15

1st Qu. 58,0 2.163 4.000 3.488 Mediana 76,0 Promedio 70,9 3Qu. 82,0
4.454 Max. 5.100 96.0 que tambin produce la figura ??.
Ejercicios
1. Escribir una funcin que toma como argumento dos vectores,x e y,
produce un Scatter plot, y calcula el coeficiente de correlacin (usando
CDR(x,y).
P P 2. Escribir una funcin que toma un vector (x1, . . . , xn) y calcula tanto
xi y x2i . (Re- miembro de la utilizacin de la funcin SUMA).
10 Otras cosas
hay muchas otras instalaciones en R. Estos incluyen:
1. Funciones para el montaje de los modelos estadsticos tales como lineales
y modelos lineales generalizados.
2. Funciones para ajustar las curvas para suavizar los datos.
3. Las funciones de optimizacin y de ecuaciones.
4. Instalaciones para programar utilizando Bucles y condicionales tales asif y
al mismo tiempo.
5. Trazando las rutinas para ver datos tridimensionales.
Tambin existe la posibilidad de "bolt-on" ms bibliotecas de funciones que
tienen una utilidad concreta.
Escribir
> Biblioteca()
dar una lista y una breve descripcin de las libreras disponibles. Escriba

> Biblioteca(nombrebiblioteca)
donde nombrebiblioteca es el nombre de la biblioteca necesaria le dar
acceso a las funciones de la biblioteca.
11 obtener ms ayuda
este tutorial gua pretende ser slo introductoria. Mucho ms ayuda puede
obtenerse de:
1. El sistema de ayuda incluido en el lenguaje;
2. Los manuales que se incluyen en el idioma: haga clic en 'Ayuda', siga la
ruta a 'manuals'. La 'Introduccin a R' es especialmente til.
3. Libros: ahora hay muchos que cubren el uso de R (y/o el lenguaje similar
S-Plus).
16

12 Descarga R para su propia PC


R es un freeware sistema; puedes descargrtelo en tu propio PC, y usted
puede encontrar que es ms conveniente para hacer tu curso de esa
manera. No olvides que si el profesor ha proporcionado bases de datos o
programas para su uso adems del sistema bsico de R, entonces
necesitar obtener copias de los mismos.
Ir a la pgina web
http://www.stats.bris.ac.uk/R
y haga clic en Windows (95 o posterior) en la rbrica distribuciones binarias
precompiladas. A continuacin, haga clic en la base. De la lista en la
siguiente pantalla, seleccione el programa de instalacin, que tendr un
nombre algo como rw1061.exe. Haga clic sobre este para iniciar la
descarga. El archivo es muy grande (18 megabytes o as), as que esto no es
realmente posible a travs de una lnea telefnica. Guarde el archivo en su
disco duro.
Si necesita descargar en un PC y, a continuacin, copie los archivos usando
disquetes para instalar en un PC diferente, hay una opcin para hacerlo.
Haga clic en el mini en lugar del nombre del programa de instalacin: usted
tendr acceso a un directorio de archivos que caben en 8 disquetes.
Para instalar el sistema, ejecute el programa de instalacin (haciendo clic en
su nombre en el explorador, o escribiendo su nombre en el comando
Ejecutar en el men Inicio). Puede aceptar la mayora de las opciones por
defecto - en particular, la ubicacin

c:\Archivos de programa\R
es un buen lugar para instalar los archivos. En el men 'Seleccionar
componentes', es una buena idea elegir archivos principales, los archivos de
ayuda HTML, manuales en lnea (PDF), y el manual de referencia.
Cuando la instalacin est completa, usted debe tener un icono en el
escritorio mostrando el smbolo R.
Es una buena idea para editar las propiedades de este icono (haga clic con
el botn derecho del ratn sobre el icono para obtener el men donde
puede elegir este) y editar la entrada en el cuadro 'Start' bajo la pestaa
'Atajo' para especificar un directorio de su eleccin para su trabajo.
17

You might also like