You are on page 1of 15

Metodos Matematicos para la Ingeniera

Grado en Ingeniera en Tecnologas Industriales

Universidad de Cantabria
Material elaborado por M. Dolores Fras, Jes
us Fernandez y Sixto Herrera profesores del
Departamento de Matematica Aplicada y Ciencias de la Computacion.

Introduccion a R
El paquete R1 es una colecci
on de programas libres2 dise
nada para el analisis estadstico de datos,
que permite desde los an
alisis descriptivos mas sencillos (como tablas de frecuencias simples, calculo de
la media o correlaciones) a procedimientos inferenciales mas complejos (como contraste de hipotesis,
analisis de la varianza o el an
alisis de componentes principales). Solo unas pocas de las posibilidades
de analisis que ofrece R ser
an abordadas en este curso.
R realiza tres funciones esenciales: (1) leer datos, (2) especificar el tipo de analisis que se quiere
realizar con esos datos y (3) mostrar los resultados obtenidos tras los analisis. La seleccion de una
metodologa apropiada al caso de estudio, as como la interpretacion de los resultados es tarea del
investigador. Por este motivo resulta necesario que el investigador conozca el fundamento te
orico
de los distintos metodos estadsticos disponibles con el objeto de que la aplicacion del analisis y la
interpretacion de los resultados se realice de forma satisfactoria.

Figura 1: Pagina web del projecto R

1
2

Sitio de referencia: http://www.r-project.org.


En el sentido GNU: http://gnu.org/philosophy/free-sw.es.html.

Contenido
1. Objetivos del curso

2. Instalaci
on de R
2.1. Microsoft Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2. Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3. Mac Os X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3
3
3
3

3. Estructura de R
3.1. Comienzo de sesi
on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2. Ventana de
ordenes (consola) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3
4
4

4. RStudio

5. Ayuda en R

6. Instalaci
on y utilizaci
on de libreras en R

7. Estructuras y tipos de datos en R


7.1. Vectores . . . . . . . . . . . . . .
7.2. Matrices . . . . . . . . . . . . . .
7.3. Factores . . . . . . . . . . . . . .
7.4. Data frame . . . . . . . . . . . .

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

7
7
9
10
11

8. Creaci
on de funciones

13

9. Leer/Importar datos

13

10.Representaciones gr
aficas

14

1.

Objetivos del curso

Con este manual se pretende que el alumno se familiarice con el paquete R y sea capaz de utilizarlo
como una herramienta de aplicaciones estadsticas a traves de las practicas que se plantean en clase.
Para ello se propone al alumno que ejecute cada una de las ordenes que se van introduciendo en el
manual, as como los ejercicios propuestos en las secciones Practica t
u mismo que serviran para
asimilar contenidos.
Todos los ficheros utilizados en este manual se pueden descargar de la web de la asignatura en la
plataforma de moodle de la Universidad de Cantabria.

2.

Instalaci
on de R

2.1.

Microsoft Windows

Sigue los siguientes pasos para la instalacion del software:


1. Descarga el fichero ejecutable desde la pagina del projecto R
http://cran.r-project.org/bin/windows/base/
2. Ejecuta el fichero descargado, teniendo en cuenta:
a) Cuando pregunta si deseamos establecer opciones de configuracion, escoge S.
b) Para el modo de presentaci
on (MDI o SDI), escoge SDI
3. Ejecuta el programa R, ya instalado.

2.2.

Linux

A traves de la p
agina inicial de R se accede a la descarga de R para diferentes versiones de Linux:
Debian, Redhat, Suse y Ubuntu
http://cran.r-project.org/bin/linux/
Se recomienda seguir las instrucciones que se indican en la web en cada uno de los casos.

2.3.

Mac Os X

Antes de procecer a la instalaci


on de R, repasar en la siguiente web los requisitos necesarios para
Mac OS X.
http://r.research.att.com/tools/
En la siguiente direcci
on se accede a la instalacion de R para Mac OS X:
http://cran.r-project.org/bin/macosx/
Seguid las instrucciones indicadas en la misma pagina web.

3.

Estructura de R

El objetivo de esta primera pr


actica es que el alumno aprenda a manejar el programa R. Para
ello, primero hablaremos de su estructura: sus ventanas y los elementos que las constituyen (barras
de men
us, etc).

3.1.

Comienzo de sesi
on

Tras arrancar el programa, aparece una ventana de ordenes titulada Consola R que indica la
version de R y c
omo obtener informaci
on acerca de la licencia de uso.
R version 3.2.1 (2015-06-18) -- "World-Famous Astronaut"
Copyright (C) 2015 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type license() or licence() for distribution details.
Natural language support but running in an English locale
R is a collaborative project with many contributors.
Type contributors() for more information and
citation() on how to cite R or R packages in publications.
Type demo() for some demos, help() for on-line help, or
help.start() for an HTML browser interface to help.
Type q() to quit R.
>
Ademas al arrancar R vemos que tambien se especifican varias ordenes muy u
tiles para obtener
ayuda acerca de las distintas funciones de R como help() o help.start(). Tambien nos indica como
salir de R con la funci
on q().
Para ir desarrollando la pr
actica de una manera mas ordenada, se recomienda crearos un directorio
de trabajo en vuestro ordenador en el que vamos a ir guardando ficheros de datos, graficas, etc. Para
ello ejecutamos la funci
on setwd (set working directory) indicando el path completo del directorio

que hemos creado previamente:


setwd(/home/practica0)
Siempre podemos consultar el contenido de ese directorio desde R ejecutando la orden dir().

3.2.

Ventana de o
rdenes (consola)

Por debajo del ttulo, esta ventana contiene una barra con los siguientes men
us, cuyas opciones
principales destacamos a continuaci
on. En Linux R se ejecuta directamente en una terminal por lo
que estos men
us no aparecen.
Archivo Operaciones b
asicas con los ficheros: Abrir script, Imprimir, Salir, etc.
Editar Tpico men
u con opciones de edicion (copiar, pegar, ...).
Misc Opciones avanzadas.
Paquetes Permite gestionar los paquetes adicionales de R. Nos interesara la opcion:
Seleccionar espejo CRAN Para activar una URL de donde descargar distintos paquetes de
R.
Instalar paquete Permite seleccionar los paquetes que se quieren instalar.
4

Cargar paquete Para activar un paquete en concreto. Importante: una vez que un paquete ya
ha sido instalado en el ordenador, para poder utilizarlo solo tenemos que cargarlo, no hay
que volverlo a instalar cada vez que iniciamos R.
Ayuda Informaci
on abundante sobre R.

4.

RStudio

La consola no es la forma m
as eficiente de trabajar con R, ya que en muchos casos nos interesar
a corregir entradas de c
odigo ya ejecutadas, retocarlas, repetirlas, crear nuestras propias funciones, etc.
Existen varias herramientas que permiten trabajar con R de una forma mucho mas amigable, creando
nuestros propios scripts de c
odigo que podremos guardar en un fichero y recuperar posteriormente.
Algunos ejemplos son RStudio y R-Comander. En nuestro caso nos vamos a centrar en la herramienta
RStudio.
RStudio (http://rstudio.org/) es una GUI (Graphical User Interface) para R programada en C,
multiplataforma (Windows, Linux y Mac). Esta herramienta a
una todos los entornos y guarda la
filosofa de los comandos aportando algunas ayudas que hacen mas llevadera la programacion con R.
Otra definicion de RStudio: es un entorno libre y de codigo abierto de desarrollo integrado (IDE) de
R. Se puede ejecutar en el escritorio o incluso a traves de Internet mediante el servidor RStudio. Entre
otras cosas encontramos que RStudio nos permite:
Abrir varios scripts a la vez.
Ejecutar pedazos de c
odigo con solo marcarlo en los script.
Mostrar el workspace.
Mostrar los objetos del workspace.
Integra la ayuda.
Integra las libreras.
Su instalaci
on es muy sencilla sin m
as que ejecutar el archivo que se descarga de su pagina web.
Con esta herramienta podemos generar nuestro propio script (Figura 2 ventana de edicion de los
comandos) en el que iremos escribiendo todas las ordenes de R y que podremos guardar en cualquier
momento y volver a usar despues. Los scripts de R tienen extension .R. Ademas podemos a
nadir
comentarios en los scripts empezando todas las lneas de comentario con el comando #.

5.

Ayuda en R

R ofrece distintas formas de buscar ayuda dependiendo de nuestras necesidades. Probar a ejecutar
las siguientes opciones de ayuda en la ventana de ejecucion de RStudio (Figura 2 ventana de ejecuci
on
de los comandos):
>help() Muestra una ventana de ayuda general sobre R
>help.start() Arranca un manual de ayuda completo en formato html, utilizando el navegador del
sistema.
>help(mean) Muestra una ventana de ayuda sobre la funcion mean que calcula la media aritmetica.
>?mean Lo mismo que el ejemplo anterior.
>help("[") Muestra una ayuda sobre el caracter [ , que es un caracter especial que forma parte del
lenguaje R.

Figura 2: Entorno RStudio

> apropos("mean") Muestra las funciones cuyo nombre contenga la cadena de caracteres que se escribe entre comillas, en este caso mean.
> help.search("mean") Busca informacion sobre objetos o funciones que tengan relacion con la cadena de caracteres escrita entre comillas en el propio nombre o en las palabras clave de su documentaci
on.

6.

Instalaci
on y utilizaci
on de libreras en R

La instalaci
on b
asica de R que se instala por defecto contiene un n
umero limitado de libreras que
nos permiten aplicar las funciones m
as habituales. Sin embargo, en muchas ocasiones nos encontramos
ante la necesidad de aplicar otro tipo de analisis que no estan incluidos en este paquete basico. Dado el
caracter libre y colaborativo de este software, en la mayoria de los casos nuestro problema ya ha sido
abordado y resuelto por otro usuario el cual ha aportado su solucion a modo de librera que ha puesto
a disposicion del resto de la comunidad de usuarios de R de forma libre. De esta manera, nosotros
podemos simplemente usar dicha libreria.
El primer paso, y normalmente el m
as complejo, es buscar en la red alguna solucion a nuestro
problema. En caso de encontrarla, podemos estar en alguna de estas situaciones:
El paquete se encuentra en repositorio denominado CRAN (Comprehensive R Archive Network).
Este sera el caso m
as sencillo ya que se podra instalar directamente desde RStudio o llamar a la
funcion install.packages(nombre libreria) haciendo referencia al nombre de la librera entre
comillas. Una vez instalado el paquete hay que activarlo con el comando library(), de modo
que ya este listo para ser usado. La instalacion de una librera solo sera necesaria la primera
vez, mientras que la activaci
on debe realizarse siempre que iniciemos una sesion en R en la que
queramos aplicar las funciones de una determinada librera ya instalada que no estaba incluida
en el paquete b
asico.
Si el paquete no est
a en el repositorio oficial de R, debemos descargar el paquete en local desde la
6

pagina web que lo ofrece. En el caso de tener que descargar el paquete comprimido, la funci
on de
instalacion permite tambien cargar el paquete desde la carpeta local en la que tengamos el archivo
comprimido. Dependiendo del Sistema Operativo, el archivo comprimido tendra una extensi
on
(p.e. .zip en windows), aunque normalmente se define explcitamente a cual corresponde cada
una. En este caso debemos ejecutar la orden
install.packages("./pathLocal/nombre paquete.tar.gz",repos=NULL,type="source")
Finalmente, podemos querer cargar una funcion que hayamos programado nosotros mismos o nos
hayamos descargado en local, pero que no sea una librera. Para ello podemos usar el comando
source. El problema de este comando es que hay que volver a aplicarlo siempre que hagamos
un cambio en la funci
on que queramos utilizar.
Podeis instalaros desde CRAN la librera ISLR (install.packages(ISLR)). Esta librera contiene una colecci
on de bases de datos que se utilizan en en el libro An Introduction to Statistical
Learning with Applications in R de G. James. Una vez instalada y cargada la librera podeis ver
los datos que contiene la base de datos Auto ejecutando la orden Auto en la ventana de comandos
de RStudio o bien la orden help(Auto), para ver la descripcion de los datos contenidos en esa base.
Como se describe en la ayuda, se trata de una base de datos de 392 vehculos de 9 variables distintas.

7.

Estructuras y tipos de datos en R


R utiliza diferentes estructuras de datos:
Vectores: Son matrices de una dimension que u
nicamente pueden contener valores numericos,
alfanumericos y valores l
ogicos. Para formar vectores se emplea la funcion c() (contracci
on de
la funcion combine). Todos los elementos deben ser del mismo tipo.
Matrices: Son vectores con un atributo adicional (dim), que define el n
umero de filas y columnas.
dim es un vector n
umerico de longitud 2. Se crean con la funcion matrix().
Arrays: Similar a las matrices pero pueden tener mas de dos dimensiones.
Factores: Vectores de variables categoricas utilizados para agrupar las componentes de otro
vector del mismo tama
no.
Listas: Colecci
on ordenada de objetos donde los elementos almacenados pueden ser de diferente
tipo.
Data frames: Generalizaci
on de las matrices, donde cada columna puede almacenar un tipo de
dato diferente, conservando la misma longitud.

7.1.

Vectores

La estructura m
as simple en R es el vector, que es una coleccion ordenada de n
umeros. Para crear
un vector, x, consistente en cinco n
umeros, por ejemplo 10.4, 5.6, 3.1, 6.4 y 21.7, se usa la orden
> x <- c(10.4, 5.6, 3.1, 6.4, 21.7)
Esta es una asignaci
on en la que se utiliza la funcion c() que, en este contexto, puede tener un n
umero
arbitrario de vectores como argumento y cuyo valor es el vector obtenido mediante la concatenaci
on
de todos ellos. Un n
umero, por si mismo, se considera un vector de longitud uno.
Advierta que el operador de asignaci
on, (<-), no es el operador habitual en otros lenguajes, (en
R el = se reserva para otro prop
osito). La asignacion en R consiste en dos caracteres, < (menor que)
y - (guion), que obligatoriamente deben ir unidos y apuntan hacia el objeto que recibe el valor de
la expresion (x en este caso). La asignaci
on puede realizarse tambien mediante la funcion assign().
7

Una forma equivalente de realizar la asignacion anterior es:


> assign(x, c(10.4, 5.6, 3.1, 6.4, 21.7))
El operador usual, <-, puede interpretarse como una abreviatura de la funcion assign().
Si una expresi
on se utiliza como una orden por si misma (es decir no se asigna a un nombre de
variable), su valor se imprime y se pierde. As pues, la orden
> 1/x
simplemente imprime los inversos de los cinco valores anteriores en la pantalla pero al no haberle
asignado ninguna variable al resultado este no queda guardado, (por supuesto, el valor de x no se
modifica).
Si a continuacion hace la asignaci
on
> y <- c(x, 0, x)
creara un vector, y, con 11 elementos, consistentes en dos copias de x con un cero entre ambas. Cuando
se realiza una asignaci
on, el resultado no se imprime en pantalla. Para verlo hay que ejecutar la nueva
variable creada:
> y
Se puede estar interesado en seleccionar un determinado valor del vector, por ejemplo el valor 5.6
del vector x. Para ello u
nicamente tendremos que saber la posicion de dicho elemento en el vector y
escribir la orden
> x[2]
O bien obtener los tres primeros elementos de ese vector x como
> x[1:3]

Practica t
u mismo

1) Utiliza la funci
on seq (consulta la ayuda para ver como se ejecuta esta funcion, recuerda: > ?seq)
para crear los siguientes vectores:
55, 56, 57, 58, 59
1, 3, 5, 7, 9, 11

Practica t
u mismo

2) Introduce el vector: x<-c(1,3,5,7,9) e intenta adivinar antes de calcular los resultados de las
siguientes instrucciones:
sum(x>5)
sum(x[x>5])
which(x>5)
x>5
Extrae el elemento de x que ocupa la posicion 2.
Extrae utilizando un u
nico comando, los 3 elementos de x que ocupan las posiciones de la 2 a la
4.

7.2.

Matrices

Otra estructura com


un es la matriz de datos. Podemos crear una matriz de la forma:
> M <- matrix(c(1,2,3,4,5,6),nrow = 2, ncol = 3)
y al igual que con vectores podemos seleccionar elementos de la matriz como la fila 2:
> M[2,]
la columna 3:
> M[,3]
o el elemento de la fila 1 y la columna 2:
> M[1,2]
Los vectores y matrices pueden usarse en expresiones aritmeticas, en cuyo caso las operaciones se
realizan elemento a elemento. Los operadores aritmeticos elementales son los habituales +, -, *, / y
para elevar a una potencia. Adem
as est
an disponibles las funciones log, exp, sin, cos, tan y sqrt siendo
esta u
ltima la funci
on que calcula la raz cuadrada. Las operaciones se realizan sobre cada uno de los
elementos del vector.
> 1/x
> M*M
> exp(x)
Existen muchas m
as funciones, entre otras, las siguientes: max y min que seleccionan respectivamente el mayor y el menor elemento de un vector; range cuyo valor es el vector de longitud dos
conteniendo el mnimo y el m
aximo , c(min(x), max(x)); length(x) que es el n
umero de elementos o
longitud de x; sum(x) que es la suma de todos los elementos de x; prod(x) que es el producto de todos
ellos y sort(x) que ordena los elementos de x de menor a mayor.
Como ya se coment
o al principio se puede obtener mas ayuda acerca de estas funciones con la

orden help()

Practica t
u mismo

3) Crea la siguiente matriz de datos: > m<-matrix(1:15, nrow=3) e intenta adivinar antes de calcular
los resultados de las siguientes instrucciones:
dim(m)
ncol(m)
nrow(m)
which(m>=5 & m<=8)
Extrae la primera fila.
Extrae el segundo elemento de la tercera columna.

7.3.

Factores

Los factores son vectores que contienen informacion categorica u


til para agrupar los valores de
otros vectores. Para convertir un vector en un factor empleamos la funcion factor(). Por ejemplo,
tenemos los datos de un grupo de personas,
nombre <- c("ana", "luis", "elena", "amparo", "blanca", "ana", "blanca", "luis")
edad <- c(23, 24, 45, 67, 32, 56, 78, 45)
actividad <- c("baja", "media", "media", "media", "alta", "alta", "baja", "media")
Los vectores actividad y nombre son variables no numericas y podemos transformarlos a tipo factor,
de la forma:
class(actividad)
factividad <- factor(actividad)
class(factividad)
La funcion class() que hemos utilizado nos indica la clase a la que pertenece la variable.
Actividad muestra tres factores definidos, que R ordena por defecto alfabeticamente. Si ese no es
el orden deseado se puede cambiar el orden de los factores de la forma:
ordered.actividad <- ordered(factividad, levels=c( "baja", "media", "alta"))
ordered.actividad
En este caso la variable actividad es una variable ordinal, por lo que resulta interesante cambiar
el orden de los factores de menor a mayor actividad. Observa la diferencia de dibujar un grafico de
barras de la variable actividad respecto al grafico de la variable ordered.actividad:
barplot(table(actividad))
barplot(table(ordered.actividad))

10

7.4.

Data frame

Un data frame (o tabla) es una generalizacion de las matrices donde cada columna puede contener
tipos de datos distintos al resto de columnas, manteniendo la misma longitud. Es lo que mas se parece
a una tabla de datos de cualquier paquete estadstico estandar. Se crean con la funcion data.frame().
En un data frame, los vectores de texto se transforman automaticamente en factores, el n
umero de
categoras o niveles vendr
a determinado por el n
umero de valores diferentes que contenga el vector.
Vamos a definir un data frame con los datos del grupo de personas definido anteriormente.
datos<- data.frame(nombre, edad, actividad)
Ejecutar el nombre del data frame creado para ver los datos que contiene.
Podemos seleccionar columnas concretas de un data frame usando los corchetes [ ] de forma similar
a la usada para seleccionar elementos de una matriz. Para acceder al vector que forma una de las
columnas de un dataframe usamos el operador $ (por ejemplo > datos$nombre).
Si queremos a
nadir otras variables a un data frame u
nicamente es necesario definir un nuevo vector,
del mismo tama
no que los anteriores, por ejemplo el peso, y usar la misma funcion.
peso <- c(56, 67, 87, 68, 79, 75, 76, 57)
datos<- data.frame(datos, peso)
Para editar un data frame definido podemos usar la funcion edit(dataframe). Sin embargo la
forma mas com
un de definir un data frame es leyendo un fichero de datos, como se vera mas adelante.
Por ejemplo, la base de datos Auto cargada antes de la librera ISLR es un data frame:
class(Auto)
y podemos acceder a alguna de las variables que contiene ese dataframe y realizar operaciones
aritmeticas con ellas en el caso de ser una variable numerica, como por ejemplo calcular la media con
la funcion mean:
class(Auto$cylinders)
mean(Auto$cylinders)
Con el comando attach, las columnas de un data.frame pasan a ser variables de tipo vector
simplificando as el c
odigo anterior en el que usabamos el operador $ para acceder a las variables del
data frame (> datos$nombre):
attach(Auto)
mean(cylinders)
El comando dettach deshace esta acci
on.
Trabajando con las variables de esa misma base de datos, podemos determinar por ejemplo el
n
umero de vehculos que tienen 6 cilindros o mas.
sum(cylinders>=6)
o el porcentaje de coches toyota corolla de esa base de datos.
sum(name=="toyota corolla")/length(name)

11

Prestad atencion a la salida de ejecutar cylinders>=6 y name==toyota corolla. En ambos casos


obtenemos un vector de verdaderos y falsos (TRUE/FALSE) dependiendo de si cada vehculo cumple
o no la condici
on correspondiente. Al aplicar la funcion sum (suma) a ese vector de valores logicos,
TRUE es considerado como 1 y FALSE como cero, como se describe en la ayuda de la propia funci
on
sum. La generaci
on de vectores de este tipo es muy u
til para seleccionar grupos de individuos que
cumplen una determinada condici
on en una muestra de datos y se utilizara mucho en la practica
siguiente.

Practica t
u mismo

4) Crea un nuevo conjunto de datos (datos), seg


un las indicaciones anteriores, con los siguientes
valores. Define el tipo de dato que consideres oportuno en cada caso (numerica o de caracteres).
Peso Altura Edad Sexo
80
1.73
20
V
85
1.91
19
V
61
1.72
19
M
79
1.75
25
M
67
1.72
21
V
65
1.70
19
M
55
1.59
25
V
75
1.75
19
M

Practica t
u mismo

5) Con el data frame generado analiza los resultados de las siguientes instrucciones:
datos[2,]
datos[3,4]
datos[datos$Edad>20]
Cual es la diferencia entre ejecutar
attach(datos);datos[Edad>20,]
y ejecutar
Edad[Edad>20]
Altura[Edad>20 & Sexo=="M"]

12

8.

Creaci
on de funciones

El usuario puede crear sus propias funciones para realizar una tarea especfica. Ademas estas se
pueden empaquetar en grupos y tener siempre disponibles para todas las sesiones. La sintaxis es
sencilla:
nombre_funcion <- function (arg1, arg2,...){
#funcion de usuario
sentencias a ejecutar
return (objeto a devolver)
}
Por ejemplo,
mi_primera_funcion <- function(x){
f <- sqrt(1-exp(-x^2))
return (f)
}
Una vez guardada en un fichero la funcion creada por el usuario, el comando source() nos permitira usarla cuando sea necesaria.
source(mi_primera_funcion)
mi_primera_funcion(3)

Practica t
u mismo

6) Crear una funci


on que obtenga las soluciones de una ecuacion de segundo grado. Y probarla para
2
la ecuacion x + 5x 16 = 0

9.

Leer/Importar datos

Desde R se pueden leer datos directamente de aquellos ficheros propios de R. Estos ficheros tienen
extension .rda. La funcion load() nos permite abrir este tipo de ficheros.
Vamos a cargar como ejemplo el fichero Pulsaciones.rda disponible en la pagina web de la
asignatura.
Pulsaciones<-load("Pulsaciones.rda")
Este fichero contiene registros de 92 personas de diferentes variables (visualizar el contenido). A
una parte de los individuos de esta muestra se les pide que corran durante un tiempo y a otros no. La
primera columna (Pulse1) contiene datos del pulso de cada individuo al inicio de la prueba, la columna
2 (Pulse2) recoge el pulso de los individuos al finalizar la prueba. La columna 3 (Correr) indica si el
individuo es del grupo de los que corrieron en la prueba o no. La columna 4 (Fumar) recoge si fuma o
no fuma, la columna 5 (Sexo) indica si es hombre o mujer. Las columnas 6 (Altura) y 7 (Peso) recogen
los datos de la altura (cm) y el peso (Kg) respectivamente. Por u
ltimo la columna 8 (Actividad) indica
que tipo de actividad fsica realiza el individuo normalmente en su vida diaria, baja, media o alta.
En RStudio se puede abrir un fichero con extension .rda directamente desde el men
u Archivo.
13

Para leer otro tipo de datos guardados en ficheros que no son propios de R se necesita importar esos datos indicando a R ciertas caractersticas sobre como estan almacenados los datos en el
fichero. Una funci
on muy utilizada para importar datos no nativos de R guardados en ASCII es
read.table(). Esta funci
on autom
aticamente convierte los datos en un data frame. Cargamos ahora
el fichero santander.txt disponible en la web de la asignatura. Antes de abrir este fichero de datos
con R podeis abrirlo con cualquier editor de texto para ver el formato de los datos que contiene.
santander1<-read.table("santander.txt")
santander2<-read.table("santander.txt", header=TRUE)
Comparar el resultado de las dos
ordenes ejecutadas antes para cargar los datos del fichero
santander.txt. Cu
al es la correcta? El parametro header sera TRUE o FALSE si la primera fila del fichero contiene el nombre de las variables o no. Por defecto toma el valor FALSE (no tiene
cabeceras). Otra opci
on de esta funci
on es sep que representa el delimitador o separador de campos. Por defecto esta opci
on toma como separador de campos el espacio en blanco, pero se pueden
especificar otros si es necesario. De forma parecida trabaja la funcion read.csv(). Para importar
correctamente los datos desde R debeis conocer de antemano todas estas caractersticas de los datos
(cabeceras, separador, caracter decimal, etc).
Desde R tambien se pueden importar ficheros creados con Microsoft Excel, aquellos con extensi
on
.xls. La funcion read.xls, incluida en la librera gdata, nos permite leer este tipo de ficheros. Debeis
instalar (una sola vez) y cargar esta librera si no esta disponible.

Practica t
u mismo

7) Utilizando los datos del fichero Pulsaciones.rda, calcula los siguientes valores:
1. Calcular el n
umero de personas que miden menos de 183 cm.
2. Calcular el porcentaje de personas que miden menos de 183 cm.
3. Determinar las mujeres que miden menos de 170 cm.

10.

Representaciones gr
aficas

Los graficos b
asicos en 2-D se encuentran en el paquete base de R (plot, hist, boxplot, etc.). Las
funciones basicas mas importantes son:
plot: por defecto genera un gr
afico de puntos.
lines: a
nade lneas a un gr
afico.
points: a
nade puntos a un gr
afico.
text: a
nade etiquetas de texto a un grafico.
title: a
nade etiquetas a los ejes X e Y, un ttulo, subttulo.
axis: modifica los ticks de los ejes y sus etiquetas.
Veamos un ejemplo usando el fichero de datos Pulsaciones.rda.
14

plot(Altura, Peso)
plot(Altura, Peso, ylim=c(60,70))
lines(c(160,190), c(65,65), col="red", lwd=2)
points(c(175), c(65), pch=3, col="blue", lwd=3)
points(c(175,180), c(60,65), pch=3, col="green", lwd=4)
text(170, 68, "Fake point")
title(main="Grafico de prueba", cex.main=1.5)
axis(1, col="violet")
axis(2, col="magenta")
Existen muchos parametros de estas funciones que pueden ser sobreescritos usando la funcion par
(consulta la ayuda ?par).
> plot(Altura,
> par("pch") #
[1] 1
> par("lwd") #
[1] 1
> par(lwd=4)
> par(pch=2)
> plot(Altura,

Peso)
Plot symbol
Line width

Peso)

Practica t
u mismo

8) El fichero de datos santander.txt contiene los datos de temperatura media mensual medida en
Santander desde 1950 hasta 2003. Se pide:
1. Representar las temperaturas medias registradas en febrero durante el periodo 1950-1960. Indicar
en que a
no se registr
o la temperatura mas baja.
2. Representar las temperaturas medias de julio y agosto entre los a
nos 1970 y 1980 y encontrar
graficamente en que a
nos esta fue mayor en julio.

15

You might also like