U0256 Curs: Introducció al programa estadístic R com a...

Preview:

Citation preview

ContenidosInstalando R

Primera sesion en RElementos principales de R

U0256 Curs: Introduccio al programa

estadıstic R com a eina docent. R en la

practica 1

Jose Antonio Palazon Palazon FerrandoDpto. Ecologıa e Hidrologıa

palazon@um.es

Universidad de Murcia

ICE–U. Lleida, 24 y 25 de Octubre de 2006

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

1 Instalando REn WinXXEn linux

2 Primera sesion en REl arranqueExpresionesFunciones

3 Elementos principales de RAyuda y documentacionVariablesDatos y resultadosObjetos

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

En WinXXEn linux

La pagina principal de R → CRAN

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

En WinXXEn linux

Seleccion de mirror

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

En WinXXEn linux

Seleccion de sistema operativo

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

En WinXXEn linux

Seleccion → base

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

En WinXXEn linux

Seleccion del fichero autoinstalable

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

En WinXXEn linux

Opciones en la instalacion

Seleccion del idioma (espanol, catalan, . . . )

Seleccion de componentes/perfil de instalacion

Una sola ventana/ventanas separadas

Formato de ayuda: texto plano, html o windows

Tipo de conexion a internet

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

En WinXXEn linux

Ligeras variaciones en las distros

Para debian, ubuntu, knoppix, . . .apt-get install r-base-core

Madrake, suse, redhat, vinelinux, . . .

Las distros desarrollan sus propios paquetes de instalacion.

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

El arranqueExpresionesFunciones

Desde . . .

winXX linux

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

El arranqueExpresionesFunciones

En winXX

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

El arranqueExpresionesFunciones

En linux

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

El arranqueExpresionesFunciones

Expresiones y operadores

> 3 + 3

[1] 6

> 1:7

[1] 1 2 3 4

[5] 5 6 7

> 1:3^2

[1] 1 2 3 4

[5] 5 6 7 8

[9] 9

> (1:3)^2

[1] 1 4 9

> 3 > 2

[1] TRUE

> 3 < 2

[1] FALSE

> exp(1)

[1] 2.718282

> round(exp(1),2)

[1] 2.72

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

El arranqueExpresionesFunciones

Expresiones y operadores

> 3 + 3

[1] 6

> 1:7

[1] 1 2 3 4

[5] 5 6 7

> 1:3^2

[1] 1 2 3 4

[5] 5 6 7 8

[9] 9

> (1:3)^2

[1] 1 4 9

> 3 > 2

[1] TRUE

> 3 < 2

[1] FALSE

> exp(1)

[1] 2.718282

> round(exp(1),2)

[1] 2.72

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

El arranqueExpresionesFunciones

Expresiones y operadores

> 3 + 3

[1] 6

> 1:7

[1] 1 2 3 4

[5] 5 6 7

> 1:3^2

[1] 1 2 3 4

[5] 5 6 7 8

[9] 9

> (1:3)^2

[1] 1 4 9

> 3 > 2

[1] TRUE

> 3 < 2

[1] FALSE

> exp(1)

[1] 2.718282

> round(exp(1),2)

[1] 2.72

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

El arranqueExpresionesFunciones

Expresiones y operadores

> 3 + 3

[1] 6

> 1:7

[1] 1 2 3 4

[5] 5 6 7

> 1:3^2

[1] 1 2 3 4

[5] 5 6 7 8

[9] 9

> (1:3)^2

[1] 1 4 9

> 3 > 2

[1] TRUE

> 3 < 2

[1] FALSE

> exp(1)

[1] 2.718282

> round(exp(1),2)

[1] 2.72

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

El arranqueExpresionesFunciones

Expresiones y operadores

> 3 + 3

[1] 6

> 1:7

[1] 1 2 3 4

[5] 5 6 7

> 1:3^2

[1] 1 2 3 4

[5] 5 6 7 8

[9] 9

> (1:3)^2

[1] 1 4 9

> 3 > 2

[1] TRUE

> 3 < 2

[1] FALSE

> exp(1)

[1] 2.718282

> round(exp(1),2)

[1] 2.72

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

El arranqueExpresionesFunciones

Expresiones y operadores

> 3 + 3

[1] 6

> 1:7

[1] 1 2 3 4

[5] 5 6 7

> 1:3^2

[1] 1 2 3 4

[5] 5 6 7 8

[9] 9

> (1:3)^2

[1] 1 4 9

> 3 > 2

[1] TRUE

> 3 < 2

[1] FALSE

> exp(1)

[1] 2.718282

> round(exp(1),2)

[1] 2.72

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

El arranqueExpresionesFunciones

Expresiones y operadores

> 3 + 3

[1] 6

> 1:7

[1] 1 2 3 4

[5] 5 6 7

> 1:3^2

[1] 1 2 3 4

[5] 5 6 7 8

[9] 9

> (1:3)^2

[1] 1 4 9

> 3 > 2

[1] TRUE

> 3 < 2

[1] FALSE

> exp(1)

[1] 2.718282

> round(exp(1),2)

[1] 2.72

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

El arranqueExpresionesFunciones

Expresiones y operadores

> 3 + 3

[1] 6

> 1:7

[1] 1 2 3 4

[5] 5 6 7

> 1:3^2

[1] 1 2 3 4

[5] 5 6 7 8

[9] 9

> (1:3)^2

[1] 1 4 9

> 3 > 2

[1] TRUE

> 3 < 2

[1] FALSE

> exp(1)

[1] 2.718282

> round(exp(1),2)

[1] 2.72

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

El arranqueExpresionesFunciones

Expresiones y operadores

> 3 + 3

[1] 6

> 1:7

[1] 1 2 3 4

[5] 5 6 7

> 1:3^2

[1] 1 2 3 4

[5] 5 6 7 8

[9] 9

> (1:3)^2

[1] 1 4 9

> 3 > 2

[1] TRUE

> 3 < 2

[1] FALSE

> exp(1)

[1] 2.718282

> round(exp(1),2)

[1] 2.72

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

El arranqueExpresionesFunciones

Expresiones y operadores

> 3 + 3

[1] 6

> 1:7

[1] 1 2 3 4

[5] 5 6 7

> 1:3^2

[1] 1 2 3 4

[5] 5 6 7 8

[9] 9

> (1:3)^2

[1] 1 4 9

> 3 > 2

[1] TRUE

> 3 < 2

[1] FALSE

> exp(1)

[1] 2.718282

> round(exp(1),2)

[1] 2.72

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

El arranqueExpresionesFunciones

Expresiones y operadores

> 3 + 3

[1] 6

> 1:7

[1] 1 2 3 4

[5] 5 6 7

> 1:3^2

[1] 1 2 3 4

[5] 5 6 7 8

[9] 9

> (1:3)^2

[1] 1 4 9

> 3 > 2

[1] TRUE

> 3 < 2

[1] FALSE

> exp(1)

[1] 2.718282

> round(exp(1),2)

[1] 2.72

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

El arranqueExpresionesFunciones

Expresiones y operadores

> 3 + 3

[1] 6

> 1:7

[1] 1 2 3 4

[5] 5 6 7

> 1:3^2

[1] 1 2 3 4

[5] 5 6 7 8

[9] 9

> (1:3)^2

[1] 1 4 9

> 3 > 2

[1] TRUE

> 3 < 2

[1] FALSE

> exp(1)

[1] 2.718282

> round(exp(1),2)

[1] 2.72

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

El arranqueExpresionesFunciones

Expresiones y operadores

> 3 + 3

[1] 6

> 1:7

[1] 1 2 3 4

[5] 5 6 7

> 1:3^2

[1] 1 2 3 4

[5] 5 6 7 8

[9] 9

> (1:3)^2

[1] 1 4 9

> 3 > 2

[1] TRUE

> 3 < 2

[1] FALSE

> exp(1)

[1] 2.718282

> round(exp(1),2)

[1] 2.72

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

El arranqueExpresionesFunciones

Expresiones y operadores

> 3 + 3

[1] 6

> 1:7

[1] 1 2 3 4

[5] 5 6 7

> 1:3^2

[1] 1 2 3 4

[5] 5 6 7 8

[9] 9

> (1:3)^2

[1] 1 4 9

> 3 > 2

[1] TRUE

> 3 < 2

[1] FALSE

> exp(1)

[1] 2.718282

> round(exp(1),2)

[1] 2.72

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

El arranqueExpresionesFunciones

Expresiones y operadores

> 3 + 3

[1] 6

> 1:7

[1] 1 2 3 4

[5] 5 6 7

> 1:3^2

[1] 1 2 3 4

[5] 5 6 7 8

[9] 9

> (1:3)^2

[1] 1 4 9

> 3 > 2

[1] TRUE

> 3 < 2

[1] FALSE

> exp(1)

[1] 2.718282

> round(exp(1),2)

[1] 2.72

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

El arranqueExpresionesFunciones

Expresiones y operadores

> 3 + 3

[1] 6

> 1:7

[1] 1 2 3 4

[5] 5 6 7

> 1:3^2

[1] 1 2 3 4

[5] 5 6 7 8

[9] 9

> (1:3)^2

[1] 1 4 9

> 3 > 2

[1] TRUE

> 3 < 2

[1] FALSE

> exp(1)

[1] 2.718282

> round(exp(1),2)

[1] 2.72

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

El arranqueExpresionesFunciones

Operadores

+,−, ∗, / suma, resta, producto, cociente

% %, %/ %, ˆ modulo, cociente entero, potencia

==, ! =, ! igual, distinto, no

>,>=, <, <= mayor que, mayor o igual que, menorque, menor o igual que

|, ||, &, && o, o, y, y

: generar una serie

% ∗ % producto de dos matricespalazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

El arranqueExpresionesFunciones

Funciones a discrecion (Base de v2.4.0: 2345)

c() Concatenar los elementos que se indi-can, separados por comas.

seq() Generar una secuencia numerica.rep() Generar un conjunto de valores repe-

tidos.t() Transponer una matriz.sqrt() Raız cuadradaabs() Valor absolutosin(), cos() ... Funciones trigonometricaslog(), exp() Logaritmo y exponencialround() Redondeo de valores numericosls() Relacion de objetos disponiblesrm() Elimina uno o varios objetosfor(), while() Evalua una o un conjunto de expresio-

nes repetitivamenteif(), ifelse() Evalua una expresion condicionalmen-

te

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

Ayuda y documentacionVariablesDatos y resultadosObjetos

Funciones de ayuda

help.start()

help() o ? help(mean), ?mean, ?":"

apropos() apropos("plot"), aporpos("[a-Z]")

find() find(x)

library() library(), library(help=base)

demo() demo(), demo(graphics)

data() data()

example() example(persp),example(lm)

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

Ayuda y documentacionVariablesDatos y resultadosObjetos

Elementos de la ayuda

mean package:base Documentation

Arithmetic Mean

Description:Generic function for the

(trimmed) arithmetic mean.

Usage

Arguments

Value

References

See Also

Examples

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

Ayuda y documentacionVariablesDatos y resultadosObjetos

Nombre de variables

Una variable se representa por un nombre

Cada variable contiene un objeto

Los nombres legales se inician por una letra o un punto

R es sensible a mayusculas

Puede utilizarse en los nombre digıtos numericos o “ ”

Deben evitarse nombres coincidentes con funciones

Ejemplos: a, A, resultados, result.rl, a33 dos,

.dat, ...

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

Ayuda y documentacionVariablesDatos y resultadosObjetos

Asignacion de expresiones a variables

<- asigna a una variable, a la izquierda, la expresion de laderecha: a<-3

-> realiza la asignacion situando la expresion a laizquierda y la variable a la derecha: 3->a

Puede sustituirse la primera con el signo “=”: a=3

Puede hacerse asignaciones dobles: 3->a->b; a<-3->b

Un calculo intermedio puede ser asignado a una variable:x<-sqrt(d<-b^2-4*a*c)

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

Ayuda y documentacionVariablesDatos y resultadosObjetos

Lectura de datos

scan()

read.table()

file, header = FALSE, sep = , quote = ”\′”,dec = ".", row.names, col.names,

as.is = FALSE, na.strings = "NA",

colClasses =~NA, nrows = −1, skip = 0,

check.names = TRUE, fill = !blank.lines.skip,

strip.white = FALSE, blank.lines.skip = TRUE,

comment.char = "#", allowEscapes = FALSE

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

Ayuda y documentacionVariablesDatos y resultadosObjetos

Vectores, matrices y arrays

Las variables representan objetos y estos puede sercomplejos

Los vectores son un caso sencillo: un conjunto ordenadode valores

Los elementos del vector, xi , se escriben en R incluyendoentre corchetes el subındice, x[i]

Las matrices son tambien conjuntos ordenados de valorespero cosiderando dos dimensiones, xi ,j que se anotan porx[i,j].

R en general utiliza estructuras llamadas arrays con ndimensiones.

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

Ayuda y documentacionVariablesDatos y resultadosObjetos

Manejo de subındices en vectores

Si x, es un vector, tanto x x[], representan a todos losvalores. Tambien: x[1:length(x)]

Si deseamos asignar un conjunto de valores a x

utilizamos: x<-c(3,9,2,...,6,8)

Si deseamos seleccionar un subcojunto de x:

x[1], el primer elemento de x.x[-1], los elementos de x excluyendo el primero.x[1:5], los 5 primeros elementos de x.x[c(1,3,5)], los elementos primero, tercero y quintode x.x[x % %2==T], los elementos pares de x.

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

Ayuda y documentacionVariablesDatos y resultadosObjetos

Manejo de subındices en matrices

El manejo de subındices en matrices es analogo al devectores.

Si x, es una matriz, se puede representar por x[], o por,x[,].

Si deseamos obtener subconjuntos de x:

x[,1], primera columna de la matriz.x[1,], primera fila de la matriz.x[1,1], primer elemento de la primera columna.x[1,1:3], elementos de la primera fila para lascolumnas 1 a 3.

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

Ayuda y documentacionVariablesDatos y resultadosObjetos

Tipos de datos simples

Logicos: TRUE,FALSE,T,FEnteros: -10, 1, 1000, . . .Precision doble: -10.1, 6.02310e24, . . . , -Inf, Inf, NaNComplejos: 1+3i, 1+0i, 9i, . . .Caracter: ”Hola”, ”Febrero”, ”sin(x)”, ”pino”,

. . .Perdidos: Na

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

Ayuda y documentacionVariablesDatos y resultadosObjetos

Tipos de datos compuestos

Vector conjunto ordenado de datos del mismotipo basico.

Array vector con atributo de dimension, esvalido cualquier numero de dimensio-nes.

Matriz es un array con dos dimensionesFactor Tipo especial de vector en el que se

codifican las clases.Lista conjunto de elementos que pueden ser

de distintos tipos.Estructura de datos mezcla de matriz y lista: data frames

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

Ayuda y documentacionVariablesDatos y resultadosObjetos

Funcion read.table()

Supongamos un fichero ASCII, de nombre misdatos.dat

cuyo contenido es:X Y Z

a 1 2 3

b 4 5 6

c 7 8 9

d 10 11 12

Usaremos la siguiente instruccion para disponer los datos enuna matriz de nombre x:read.table("misdatos.dat")->x

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

Ayuda y documentacionVariablesDatos y resultadosObjetos

Escritura de resultados

sikn()

write.table()

Librerıa xtable (LATEX y html)

system()

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

Ayuda y documentacionVariablesDatos y resultadosObjetos

Un ejemplo de objeto

Un ejemplo: hist(rnorm(1000))->sim.hist

palazon@um.es U0256. R eina docent: en la practica, 1

ContenidosInstalando R

Primera sesion en RElementos principales de R

Ayuda y documentacionVariablesDatos y resultadosObjetos

Nombres y elementos de un objeto

names(hist.norm)

[1] ”breaks” ”counts” ”intensities”[4] ”density” ”mids” ”xname”[8] ”equidist”

hist.norm$counts hist.norm$coun

hist.norm$co hist.norm$c

[ 1] 1 1 5 12 41

[ 6] 98 150 212 186 142

[11] 91 43 12 4 2

plot(hist.norm)

palazon@um.es U0256. R eina docent: en la practica, 1

Recommended