Aprendiendo R Minicurso preparado para el VII Congreso Nacional de Estudiantes de Estadistica UNILim - PowerPoint PPT Presentation

1 / 43
About This Presentation
Title:

Aprendiendo R Minicurso preparado para el VII Congreso Nacional de Estudiantes de Estadistica UNILim

Description:

Estas notas de clase y los archivos de datos que no vienen con el programa R ... Las dos variables son : eruptions' =longitud de la erupcion en minutos y waiting' ... – PowerPoint PPT presentation

Number of Views:756
Avg rating:4.0/5.0
Slides: 44
Provided by: edith5
Category:

less

Transcript and Presenter's Notes

Title: Aprendiendo R Minicurso preparado para el VII Congreso Nacional de Estudiantes de Estadistica UNILim


1
Aprendiendo RMini-curso preparado para el VII
Congreso Nacional de Estudiantes de Estadistica-
UNI-Lima, Peru, Setiembre 2005
  • Edith Seier
  • East Tennessee State University
  • (previamente en la UNM San Marcos, Lima, Peru)
  • Estas notas de clase y los archivos de datos que
    no vienen con el programa R seran accesibles
    desde http//www.etsu.edu/math/seier/R.htm

2
Organizacion de estas notas
  • Las notas para este Minicurso estan compuestas de
    2 modulos y un apendice, el lector puede elegir
    que modulos le interesan. El modulo 1 es
    prerequisito para el modulo 2.
  • Modulo 1 Informacion basica sobre R. Uso basico
    de R entrada de datos, calculos estadisticos y
    graficos.
  • Modulo 2 Escribiendo nuestras propias funciones
    en R. Ejemplos de intervalos de confianza para la
    desviacion media y analisis espectral de series
    de tiempo.
  • Apendice Informacion sobre el uso de R en
    topicos avanzados de Estadistica.
  • Recomendamos al lector tener el programa R en su
    computadora y usar estas notas en forma
    interactiva, copiando los comandos y datos en R,
    realizando los calculos y haciendo los
    ejercicios.
  • Hemos incluido algunos ejercicios basicos para
    repasar lo aprendido en algunas secciones. Las
    paginas con ejercicios tienen el fondo en color
    naranja.

3
Que es R ?
  • Sus creadores lo definen como un ambiente en el
    cual se implementan tecnicas estadisticas. El
    lenguaje de programacion R de creciente uso en
    Estadistica empezo como una version del lenguaje
    S con fines de ensenanza y fue puesto en 1995 a
    servicio del publico por sus autores. Se siguen
    creando nuevos paquetes de funciones y su
    desarrollo es un esfuerzo internacional. Toda la
    informacion acerca del proyecto R se encuentra en
    http//www.r-project.org
  • Hay versiones para sistema operativo Windows y
    Linux
  • Ofrece una intersante alternativa tener una
    copia legal de un software sofisticado y util sin
    costo alguno. Ademas no es un paquete cerrado
    sino que nosotros podemos hacer crecer su
    utilidad de acuerdo a nuestras necesidades.
  • En cursos avanzados de estadistica y en
    investigacion estadistica y bio-estadistica, su
    uso (o el de S que es la version comercial) esta
    aumentando considerablemente.

4
Donde se obtiene R?
  • R se puede bajar gratuitamente de
  • http//www.r-project.org
  • En esa pagina estan
  • El programa basico
  • Paquetes de funciones adicionales escritas por
    colaboradores del proyecto R
  • Diversos manuales, varios de ellos en Castellano.
  • (a la derecha ven la pagina del proyecto R)

5
Aprendiendo R
  • Cada persona tiene su propio estilo de aprender.
    Personalmente, para aprender a programar en un
    lenguaje nuevo, lo mas efectivo es ponerme como
    meta escribir un programa para hacer un analisis
    de datos o una simulacion especifica. Es decir
    tener una necesidad, un problema especifico y
    buscar en el manual la informacion de como
    lograrlo.
  • Estas notas no pretenden ser exhaustivas pero
    ofrecen en una forma simplificada lo basico para
    empezar y para motivar al lector a aprender mas
    de otras fuentes.
  • En el Modulo 1 daremos una idea general de lo que
    es R y los comandos basicos para hacer calculos y
    graficos estadisticos en su forma mas simple. El
    lector puede investigar mas acerca de esos
    comandos usando el help de R.
  • En el Modulo 2 aprenderemos a escribir funciones,
    es decir a programar en R . Ese modulo refleja
    los intereses del autor al tratar de aprender R
    escribir funciones en el area de intervalos de
    confianza y en analisis espectral de series de
    tiempo.
  • En el apendice daremos algo de informacion sobre
    las areas de Estadistica para las cuales se han
    desarrollado muchas funciones en R y donde pueden
    aprender mas.
  • Luego ustedes pueden decidir si quieren usar R,
    como quieren usarlo y como hacer un estudio mas
    profundo del lenguaje. Aquellos que piensen hacer
    un postgrado en Estadistica o Bioestadistica
    aprender R es altamente aconsejable. En la pagina
    de R (http//www.r-project.org) encontraran
    extensos manuales muy utiles, varios estan en
    Castellano. Por lo general los manuales, asi como
    estas notas, reflejan el uso particular que el
    autor le da al lenguaje R. Tambien el libro
    Introductory Statistics with R por P. Dalgaard
    es una referencia util.
  • Recientemente han aparecido mas libros sobre R,
    algunos se concentran en estadistica basica,
    otros en graficos y otros en temas especificos
    como Bioinformatica, modelos lineales, etc.

6
Para que podemos usar R?
  • Calculos y graficos basicos en estadistica usando
    un software que podemos tener legalmente y sin
    costo alguno
  • Escribir funciones para hacer calculos que no
    estan incluidos en paquetes estadisticos
    comerciales
  • En la ensenanza de cursos mas avanzados cuando
    queremos que los alumnos esten conscientes de los
    pasos necesarios para obtener resultados vs. usar
    un paquete cerrado
  • Usar paquetes especializados en R para analisis
    estadistico en areas como estadistica espacial,
    analisis de supervivencia, modelos lineales
    generalizados y analisis de microarreglos,
    (microarrays) que han sido desarrollados en
    medios academicos.

7
Modulo 1 Estadistica basica
  • 0. Para empezar
  • Entrada de datos
  • Operaciones, transformaciones etc.
  • Calculando estadisticas descriptivas
  • Graficos
  • Mas calculos estadisticos

8
Para empezar
  • Al bajar el programa de
  • http//www.r-project.org se crea el icono
  • El programa se activa como cualquier otro
    presionando el mouse en el icono y la siguiente
    pantalla aparece
  • Nota el programa R distingue entre minusculas y
    mayusculas.
  • El programa R tiene una opcion de ayuda en su
    menu donde se puede obtener informacion acerca de
    funciones especificas y tambien acceder a algunos
    de los manuales.

9
1 Entrada de datos
  • 1.1 Entrada de datos por teclado
  • 1.2 Leyendo un archivo ascii con una columna
  • 1.3 Leyendo un archivo ascii con varias columnas
    y nombres de variables e individuos
  • 1.4 Leyendo datos que vienen incorporados en R.
  • 1.5 Generando datos sucesiones y numeros
    aleatorios.

10
1.1Entrando datos por teclado
  • 1)Nombre el objeto donde va a depositar esos
    datos con
  • nombre lt- c( , , , , )
  • Ejemplo (consumo de cigarrillos per capita en
    1930, fuente Statistics por Freeman et. Al)
  • Datos categoricos
  • paislt-c("Australia" , "Canada", "Dinamarca"
    ,"Finlandia", "Inglaterra" , "Islandia" ,
    "Holanda" , "Noruega", "Suecia", "Suiza", "EEUU"
    )
  • Datos numericos
  • cigarrilloslt-c(480,500,380,1100,1100,230,490,250,
    300,510,1300)
  • Etiquetas para los datos
  • Si desea ponerle etiquetas a los datos puede usar
    el comando names. Ejemplo
  • names(cigarrillos)lt-pais
  • Luego escriba cigarrillos para ver los datos, en
    pantalla aparecera
  • Australia Canada Dinamarca Finlandia
    Inglaterra Islandia Holanda
  • 480 500 380 1100
    1100 230 490
  • Noruega Suecia Suiza EEUU
  • 250 300 510 1300

11
  • 1.2) Leyendo los datos de un archivo ascii
  • Si es una sola variable cuantitativa y los
    datos estan en una columna en un archivo ascii,
    decidir el nombre de la variable y usar el
    comando scan. Ejemplo el promedio mensual de la
    temperatura del mar en El Callao de 1956 a 1985
    esta en el archivo tempsea.dat
  • tempmarlt-scan(atempsea.dat)
  • Si luego escribimos tempmar, los datos apareceran
    en pantalla

12
1.3 Leyendo un archivo ascii con varias columnas
  • Muchas veces tenemos datos para varias variables
    en una hoja de datos (Excel, Minitab etc) a
    partir de la cual podemos preparar un archivo
    ascii con varias columnas. Por ejemplo teniamos
    un archivo con datos socioeconomicos de 12 paises
    de Latino-America llamado LAmer.dat. (Datos de
    UNESCO para 1990) (este es un subconjunto de los
    datos en el articulo Rouncefeld, M (1998) The
    Statistics of Poverty and Inequality. Journal of
    Statistical Education) Los nombres de las
    variables estan en la primera fila, y la primera
    columna contiene los nombres de los paises.
  • LAlt-read.table("eLAmer.dat", headerTRUE,
    row.names1)
  • Si escribimos LA aparecera en pantalla lo
    siguiente
  • Natal MortInf PNB
  • Argentina 20.7 25.7 2370
  • Bolivia 46.6 111.0 630
  • Brazil 28.6 63.0 2680
  • Chile 23.4 17.1 1940
  • Colombia 27.4 40.0 1260
  • Ecuador 32.9 63.0 980
  • Guyana 28.3 56.0 330
  • Paraguay 34.8 42.0 1110
  • Peru 32.9 109.9 1160
  • Uruguay 18.0 21.9 2560
  • Venezuela 27.5 23.3 2560
  • Mexico 29.0 43.0 2490

13
  • Para trabajar con esas variables podemos crear
    objetos con cada columna
  • TasaNatlt-LA,1
  • MortInflt-LA,2
  • PNBlt-LA,3
  • Una vez creados estos objetos ya podriamos por
    ejemplo calcular
  • la maxima Tasa de Natalidad con max(TasaNat)
  • minimo valor de Mortalidad Infantil escribiendo
  • min(MortInf)
  • hacer un grafico de tallos y hojas del Producto
    Nacional Bruto con stem(PNB)
  • o hacer un diagrama de dispersion para observar
    la Tasa de Natalidad y la Mortalidad infantil
    juntas, escribiendo
  • plot(TasaNat,MortInf)

14
  • 1.4) Datos que ya vienen con R.
  • R incluye varios conjuntos de datos , para ver la
    lista tipear data() y veran la lista.

15
  • Para leer uno de los conjuntos de datos que ya
    vienen en R simplemente escriba data y el nombre
    en parentesis. Ejemplo
  • data(islands)
  • Luego para ver los datos escriba islands

16
  • Cuando el conjunto de datos tiene varias
    variables, conviene crear objetos con cada una de
    ellas para poder calcular estadisticas y graficos
    con esas variables.
  • Veamos como ejemplo el famoso conjunto de datos
    Iris de Analisis Multivariante.
  • data(iris)
  • iris
  • Sepal.Length Sepal.Width Petal.Length Petal.Width
    Species
  • 2 4.9 3.0 1.4
    0.2 setosa
  • 3 4.7 3.2 1.3
    0.2 setosa
  • 1 5.1 3.5 1.4
    0.2 setosa
  • 4 4.6 3.1 1.5
    0.2 setosa
  • Luego creamos objetos con cada columna de datos
  • LengthSlt-iris,1
  • WidthSlt-iris,2

17
Nota
  • Hay otras opciones de lectura de datos e
    importacion de datos de otros programas
    estadisticos. Para aprender acerca de ellas se
    recomienda consultar el documento
    R-data-import/export accesible desde la opcion
    help de R.

18
1.5 Creando datos
  • 1.5.a Creando sucesiones de numeros
  • A veces se necesita crear una secuencia de
    numeros, digamos 1,2,3, esto se logra con
  • ilt-seq(comienzo, final, byincremento)
  • En lugar de comienzo, final e incremento
    escribimos sus valores numericos
  • ilt-seq(0,10,by2) creara la secuencia
  • 0,2,4,6,8,10
  • Por ejemplo para graficar la funcion seno o
    coseno tenemos que crear primero los valores del
    argumento de la funcion
  • tlt-seq(0,60,by0.01)
  • Y lt-cos(t)

19
1.5b Generando numeros aleatorios
  • Si queremos generar numeros aleatorios de una
    distribucion normal usamos el comando rnorm(n)
    donde n es el numero de datos. Por ejemplo si
    quisieramos simular 500 observaciones de una
    distribucion normal con media 20 y desviacion
    estandard 5 escribiriamos
  • xlt-rnorm(500)
  • ylt-x520
  • hist(y)
  • Si queremos generar numeros de una distribucion
    uniforme (0,1) usariamos
  • Xlt-runif(500)
  • Se pueden generar numeros aleatorios de
    practicamente todas las distribuciones a partir
    de numeros con distribucion uniforme o normal si
    conocemos las relaciones entre las diferentes
    distribuciones.

20
Ejercicios para la seccion de entrada de datos
  • Crear dos objetos edades y amigos con las
    edades y los nombres de 4 personas. Para
    comprobar que esos datos han sido leidos, escriba
    edades y luego escriba amigos, los datos deberan
    aparecer en la pantalla. Luego use los nombres en
    amigos para ponerle nombres a los datos en
    edades. Para comprobar si funciono, escriba
    edades y estas deben salir con los nombres de las
    personas incluidos.
  • Tener listo un archivo ascii con una columna de
    datos y leerlo desde R.
  • Tener listo un archivo ascii con varias columnas
    de datos, los nombres de las variables en la
    primera fila. La primera columna llamela ID y
    alli ponga los nombres de las unidades
    estadisticas. Lea el archivo desde R y luego cree
    objetos con cada variable.
  • Ver los datos del archivo faithful que esta en R.
    Old Faithful o El viejo fiel es un geiser en
    el parque Yellowstone en Wyoming, EEUU. Las dos
    variables son eruptions longitud de la
    erupcion en minutos y waiting minutos de
    espera desde la erupcion anterior. Una vez que
    los datos han aparecido, ver la dimension de los
    datos escribiendo dim(faithful) , vera que tiene
    dos columnas y 272 filas. Crear dos objetos
    duracion y espera con la primera y segunda
    columna respectivamente.
  • Usar el comando seq para generar los valores de
    una variable llamada tiempo y que toma valores de
    1 a 50.
  • Generar 100 numeros aleatorios con la
    distribucion normal con media 50 y desviacion
    estándar 10

21
2. Operaciones, transformaciones
  • Las operaciones aritmeticas se realizan con los
    simbolos usuales - / . Por ejemplo si tenemos
    datos para peso en libras en la variable pesolb
    podemos convertirlos a peso en kilos con
    pesoklpesolb/2.2
  • Algunas transformaciones utiles son
  • exp( ) , para potencias
  • log( ) para logaritmo natural
  • log10( ) para logaritmo base 10
  • Tambien hay las funciones
  • sin(), cos(), tan(), asin(), atan(), acos()

22
3. Calculando estadisticas descriptivas
  • A continuacion veran como calcular el numero de
    observaciones (length), la suma (sum), la media
    (mean) , la mediana (median), un cuantil
    determinado por la proporcion de observaciones
    menores que ese valor (quantile), el minimo y el
    maximo. El ejemplo usado es la tasa de mortalidad
    por cancer pulmonar en 1950 en 11 paises (Freeman
    et. al ) Primero entramos los datos escribiendo
  • tasamortlt-c(180,150,170,350,460,60,240,90,110,250
    ,200)
  • gt length(tasamort)
  • 1 11
  • gt sum(tasamort)
  • 1 2260
  • gt mean(tasamort)
  • 1 205.4545
  • gt median(tasamort)
  • 1 180
  • gt sd(tasamort)
  • 1 117.2488
  • gt var(tasamort)
  • 1 13747.27
  • gt quantile(tasamort,0.5)
  • 50
  • 180
  • gt min(tasamort)
  • 1 60
  • gt max(tasamort)
  • 1 460
  • summary(tasamort)
  • Min. 1st Qu. Median Mean 3rd Qu. Max.
  • 60.0 130.0 180.0 205.5 245.0 460.0
  • Para calcular la correlacion entre dos variables
    x e y se utiliza
  • cor(x,y)

23
Ejercicios para la seccion de Estadistica
Descriptiva
  • 1.-Utilize el conjunto de datos Faithful que
    viene incorporado en R. Ese conjunto de datos
    contiene informacion acerca de la duracion de
    erupciones del famoso geiser y el tiempo
    transcurrido entre erupciones.
  • Para llamarlo escribimos
  • data(faithful)
  • Luego tomemos los datos de la variable duracion
  • duracionlt-faithful,1
  • Si escribimos duracion apareceran en pantalla los
    272 observaciones de la variable duracion de la
    erupcion (en minutos)
  • Conteste las siguientes preguntas utilizando R
  • Cual es la duracion promedio?
  • Cual es la duracion media?
  • Cuanto duro la erupcion mas corta? Cuanto duro la
    duracion mas larga?
  • Cual es el valor de la desviacion estandard y la
    varianza?
  • Calcule el cuartil inferior y el cuartil
    superior.
  • 2. Defina el objeto espera escribiendo
  • Esperalt-faithful,2
  • Calcule la correlacion entre la duracion de la
    erupcion y el tiempo de espera entre erupciones.

24
4.1 Graficos basicos
  • 4.1a Histograma hist(variable) Ejemplo
  • hist(tempmar)
  • 4.1b Boxplot
  • boxplot(variable)
  • Ejemplo
  • boxplot(tempmar)

25
Graficos de tallo y hoja (stem-plots)Se obtienen
con el comando stem Ejemplo tempmarlt-scan(atemp
sea.dat)stem(tempmar)
  • The decimal point is at the
  • 14 6
  • 15 00113444
  • 15 5566677788889999
  • 16 000001111122222222222333444444444444
  • 16 5555666666666666666666777788888888888888999
    9999
  • 17 0000000000000000111111122222222233333333444
    4444444
  • 17 55555666666666666666666778888888889999
  • 18 0000000000111222222223333444444444
  • 18 55555566666666677777888888999
  • 19 000000000011111111112222233334444
  • 19 5555666666688888999
  • 20 00012234444
  • 20 5566666668
  • 21 00011222333444
  • 21 58889
  • 22 01223
  • 22 6

26
4.1c Graficos Circulares (PieChart)
  • El comando es pie pero primero tenemos que crear
    un vector con las frecuencias de cada categoría y
    otro con los nombres de la categoría
  • Ejemplo en una encuesta a 100 personas 25
    contestaron que son fumadores y 75 contestaron
    que no.
  • xlt-c(25,75)
  • fumalt-c("si","no")
  • pie(x,fuma)

27
4.1c Diagrama de puntos(dotchart)
  • Si queremos mostrar el valor de una variable para
    cada elemento de la poblacion o muestra,
    necesitamos crear primero un conjunto de datos
    con etiquetas. Ejemplo
  • paislt-c("Australia" , "Canada", "Dinamarca"
    ,"Finlandia", "Inglaterra" , "Islandia" ,
    "Holanda" , "Noruega", "Suecia", "Suiza", "EEUU"
    )
  • cigarrilloslt-c(480,500,380,1100,1100,230,490,250,
    300,510,1300)
  • names(cigarrillos)lt-pais
  • Y luego obtenemos el grafico con
  • dotchart(cigarrillos)

28
4.1d Diagrama de dispersion
  • Ingresemos los datos de consumo de cigarrillo
    percapita en 1930 y la tasa de mortalidad por
    cancer pulmonar en 1950. (Freeman et.al.)
  • paislt-c("Australia" , "Canada", "Dinamarca"
    ,"Finlandia", "Inglaterra" , "Islandia" ,
    "Holanda" , "Noruega", "Suecia", "Suiza", "EEUU"
    )
  • cigarrilloslt-c(480,500,380,1100,1100,230,490,250,
    300,510,1300)
  • tasamortlt-c(180,150,170,350,460,60,240,90,110,250
    ,200)
  • Para obtener el grafico (scatter-plot) usamos
  • plot(cigarrillos,tasamort)

29
4.1e Uniendo los puntos
  • Si queremos unir los puntos con lineas como en
    los graficos de series de tiempo usamos l
    dentro del comando plot. Dentro del comando plot
    tambien podemos dar nombres a los ejes. El
    grafico del ejemplo es el de una armonica.
  • tlt-seq(0,60,by0.01)
  • yalt-5cos(pit/6)
  • yblt-3sin(pit/6)
  • ylt-yayb
  • plot(t,y,'l',xlab"t", ylab"h(t)" )

30
4.1f Graficando Series de Tiempo
  • Podemos graficar series de tiempo simplemente
    indicando unir los puntos con l dentro del
    comando plot (ver 4.1e) o indicando a R que los
    datos corresponden a una serie de tiempo.
    Ejemplo
  • El archivo tempsea.dat contiene los promedios
    mensuales de la temperatura del mar frente al
    Callao (Peru) de 1955 a 1986 (datos Instituto del
    Mar del Peru). Leamos los datos y llamemos al
    objeto creado tempmar
  • tempmarlt-scan(atempsea.dat)
  • Luego creemos una serie de tiempo
  • tempmar.tslt-ts(tempmar,startc(1955,1),freq12)
  • Y grafiquemosla escribiendo plot(tempmar.ts)

31
Ejercicios para la seccion basica de Graficos
  • Obtener el histograma y el grafico de cajas para
    el consumo de cigarrillos per capita
  • Hacer un grafico circular (piechart) para una
    encuesta en que 300 personas declararon ser
    ex-fumadores, 310 dijeron ser actuales fumadores
    y 580 declararon nunca haber sido fumadores.
  • Produzca un grafico de puntos (dotchart) para
    los datos island (tamanos de masas de tierra,
    incluye islas y continentes)
  • Lea los datos del

32
4.2 Aumentando informacion a los graficos
  • 4.2.a Poniendo titulos . Usar el comando title.
    Ejemplo luego de obtener el grafico con
  • plot(cigarrillos,tasamor) escribimos
  • title(main"cigarrillos en 1930 y cancer
    pulmonar en 1950")
  • Tambien se pueden poner nombres a los ejes dentro
    usando xlab y ylab

33
4.2b Agregando lineas a un grafico
  • Una vez que tenemos un grafico de dispersion
    podemos agregarle una linea con el comando
    abline, indicando la interseccion y la pendiente.
    Ejemplo, los dos parametros estimados de la recta
    minimo cuadratica para el ejemplo del cigarrillo
    son a67.56 y b0.22844, asi que luego de hacer
    el grafico con
  • plot(cigarrillos,tasamort) escribimos
  • abline(67.56 , 0.22844)

34
  • Entre los graficos que los paquetes escritos en R
    estan
  • Practicamente todos los graficos utilizados en
    Analisis Multivariante
  • Graficos mosaico (graficos para varias variables
    categoricas)
  • Metodos de suavizacion utilizados en regresion
  • Graficos de series de tiempo
  • Graficos para el analisis de Microarreglos
    (Microarrays)
  • Si en el menu de R elejimos Help search help
    y escribimos plot, aparecera una lista de
    graficos que R puede hacer. Lo mas aconsejable es
    elegir un area de aplicacion o un conjunto de
    graficos que nos interesen en particular y buscar
    en los manuales y publicaciones acerca de R como
    lograr esos graficos.
  • En la siguiente pagina reproducimos el muestrario
    de graficos ( screenshots)http//www.r-project.o
    rg

35
Imagenes creadas y registradas por "(C) R
Foundation, from http//www.r-project.org".
36
5. Mas calculos estadisticos
  • Existen funciones en R para hacer calculos
    estadisticos muy sofisticados. Aca solo mostramos
    unos pocos para incentivar al lector a elegir un
    tema dentro de estadistica y aprender mas acerca
    de como realizar los calculos con R.
  • En el apendice se comentan algunas de las areas
    donde R se utiliza intensamente y se dan
    sugerencias de donde encontrar material de
    estudio.

37
5.1 Docima de hipotesis
  • Como ejemplo veremos el test t para dos muestras
    independientes. Los datos son tomados de Moore,
    D. The Basic Practice of Statistics y
    corresponden a un experimento con maiz normal
    (control) y un maiz experimental que ha sido
    geneticamente modificado. La variable respuesta
    es el incremento en peso (gramos) de pollitos
    machos de 1 dia de edad asignados aleatoriamente
    (20 a control y 20 al experimental) a uno de los
    dos grupos. Los valores de la variable incremento
    en el peso son
  • gainlt-c(380,321,366,356,283,349,402,462,356,410,3
    29,399,350,384,316,272,345,455,360,
  • 431,361,447,401,375,434,403,393,426,406,318,467,40
    7,427,420,477,392,430,339,410,326)
  • La variable que indica el tipo de maiz que
    recibio cada pollo (control1 experimental2) es
  • cornlt-c(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,
    2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2)
  • Si queremos docimar la hipotesis
    Hou(exp)u(cont) versus la alternativa bilateral
    y no asumiendo que las varianzas son iguales
    (Welch test), escribimos
  • t.test(gaincorn)
  • El resultado que aparece en pantalla es
  • Welch Two Sample t-test
  • data gain by corn
  • t -2.469, df 36.915, p-value 0.0183
  • alternative hypothesis true difference in means
    is not equal to 0
  • 95 percent confidence interval
  • -66.729186 -6.570814
  • sample estimates
  • mean in group 1 mean in group 2
  • 366.30 402.95

38
  • Hay varias variantes del test dependiendo de
  • tipo de hipotesis alternativa
  • Varianzas iguales o desiguales
  • Dos muestras independientes, caso de muestras
    apeareadas o una sola muestra
  • Para todas las variantes se usa la misma funcion
    t.test, indicando la modalidad dentro del
    parentesis
  • (usar la ayuda (help) para t.test)
  • t.test(x, y NULL, alternative
    c("two.sided", "less", "greater"),mu 0, paired
    FALSE, var.equal FALSE,
  • conf.level 0.95, ...)
  • y es la variable que contiene la identificacion
    de las muestras, si es una sola muestra y no es
    necesaria.
  • R tambien tiene tests no parametricos.

39
5.2 Regresion y correlacion
  • Leamos los datos del cigarrillo y muerte por
    cancer pulmonar
  • cigarrilloslt-c(480,500,380,1100,1100,230,490,250,3
    00,510,1300)
  • tasamortlt-c(180,150,170,350,460,60,240,90,110,250
    ,200)
  • cor(cigarrillos,tasamort) produce la correlacion
    0.737345
  • Para encontrar estimar la recta de regresion se
    usa lm (linear model)
  • lm(tasamortcigarrillos)
  • El resultado son los parametros estimados
  • Coefficients
  • (Intercept) cigarrillos
  • 67.5609 0.2284
  • summary(lm(tasamortcigarrillos)) arroja un
    resultado mas completo.

40
5.3 Series de tiempo Estimando la funcion de
autocorrelacion
  • Asumiendo que hemos ya leido los datos de
    temperatura del mar,
  • Para obtener el grafico de la derecha escribimos
  • acf(tempmar)
  • Si solo queremos 24 autocorrelaciones escribimos
  • acf(tempmar,24)
  • Si en lugar del grafico queremos obtener las
    autocorrelaciones, escribimos
  • acf(tempmar,plotF)
  • Las personas interesadas en Series de Tiempo
    pueden consultar el articulo A Computer Evolution
    in Teaching Undergraduate Time Series de Erin M.
    Hodgess publicado en Journal of Statistics
    Education Volume 12, Number 3 (2004) y que e
    puede leer en
  • http//www.amstat.org/publications/jse/v12n3/hodge
    ss.html

41
  • Aparte de muchas mas opciones para los temas
    vistos, R tiene funciones para otros temas
    standard en Estadistica como
  • Analisis de varianza y covarianza
  • Distribuciones de probabilidad
  • Docimas para tablas de doble entrada
    (Chi-cuadrado, McNemar etc.)
  • Regresion multiple
  • Calculo de tamano de muestra
  • Regresion Logistica
  • Analisis de Supervivencia
  • Todos estos temas se encuentran desarrollados en
  • Dalgaard, P.(2002)Introductory Statistics with
    R Springer Verlag.
  • Tambien pueden encontrarse en los manuales para
    aprender a usar y programar en R mencionados en
    la siguiente pagina.
  • Actualmente se estan publicando libros sobre un
    tema especifico (por ejemplos Modelos Lineales)
    que incluyen programas en R. Tambien hay libros
    mas generales sobre metodos estadisticos que
    incluyen programas en R, por ejemplo Statistical
    Analysis and Data Display, An Intermediate Course
    with Examples in S-Plus, R, and SAS de Heiberger
    Holland . Springer Verlag 2004.

42
Para aprender R
  • En la pagina http//www.r-project.org encontraran
    listas de libros, manuales oficiales del proyecto
    y manuales contribuidos. Todos los manuales
    pueden ser obtenidos de la pagina del proyecto.
  • Hay algunos manuales contribuidos en Castellano.
    Esta es la lista que aparece en la pagina
    http//www.r-proj.org al elejir la opcion
    Manuals.
  • R para Principiantes, the Spanish version of R
    for Beginners, translated by Jorge A. Ahumada
    (PDF).
  • A Spanish translation of An Introduction to R
    by Andrés González and Silvia González (PDF,
    Texinfo sources).
  • Gráficos Estadísticos con R by Juan Carlos
    Correa and Nelfi González (PDF).
  • Cartas sobre Estadística de la Revista Argentina
    de Bioingeniería by Marcelo R. Risk (PDF).
  • Introducción al uso y programación del sistema
    estadístico R by Ramón Díaz-Uriarte,
    transparencies prepared for a 16-hours course on
    R, addressed mainly to biologists and
    bioinformaticians (PDF). See Ramón's R courses
    page for more information.

43
Una sugerencia para el estudio de R
  • Formar un grupo relativamente pequeno de personas
    interesadas en un area en particular (lectura de
    archivos de datos provenientes de otros
    programas, estadistica basica, regresion,
    analisis multivariante, series de tiempo, modelos
    lineales, datos categoricos etc. etc.) y de
    algunos temas especificos dentro de esas areas
  • Hacer una lista de las cosas (graficos y/o
    calculos) que les interesaria aprender a hacer y
    cada persona toma un elemento de la lista y busca
    la informacion en los manuales hasta aprender
    como hacerlo en R
  • Luego se reunen, cada uno expone lo que ha
    aprendido y reparte las notas a los demas.
  • Coordinando varios grupos pequenos de temas
    diferentes se puede extender la cobertura de lo
    que se aprende.
Write a Comment
User Comments (0)
About PowerShow.com