2. Introducción e instalación
• R es un sistema de análisis estadístico
creado en 1996 por Ross Ihka y Robert
Gentleman .
• Es una implementación del lenguaje S
desarrollado en los laboratorios Bell por
Rick Becker, John Chambers y Adam
Wilks.
• Además, el lenguaje S forma la base del
sistema S-PLUS
• S, simple y clara.
3. Introducción e instalación
• R puede utilizarse como un lenguaje de
programación y como una pieza.
• Puede ser utilizado en la manipulación de
datos, cálculos y proyección de gráficas.
• También puede ser usado como un
interpretador de lenguaje de
programación y es una introducción
excelente a la programación ya que su
sintaxis es simple y clara.
4. Instalación de R
• La descarga de R es gratuita en CRAN
(Comprehensive R Archive Network)
5. Instalación de R en Windows
• Para la plataforma de Windows accede
Windows (95 o versiones
posteriores), escoge la versión y
descarga el archivo R-XXXX-
win32.exe, donde XXXX representa el
número ejecutable (por ejemplo, R-2.4.0-
win32.exe para liberar 2.4.0) escoge un
área cerca de ti (eg. UK, Bristol).
• Utiliza este archivo para instalar R en tu
computadora.
6. GNU Linux/Unix
• En las cajas *nix se necesita tener una raíz
de acceso.
• Usualmente hay disponible un .rpm ó un
paquete de un instalador similar.
• Si usted es bueno poniendo a funcionar
paquetes lo puedes instalar desde su
fuente donde debes descargar los archivos
de base de .src y compilar tu propia
versión.
7. Macintosh
• R esta disponible para los sistemas OSX.
• Por el momento el autor no conoce como
se puede instalar.
• La información se puede conseguir en
CRAN.
8. Document conventions
• Este es el color de entrada.
• Lo que significa que todo lo que ves de este
color puede entrarse en la línea de comando
de R.
• Todo en este color es repuesta de R y
aparecerá en la ventana de R.
• Todo en este color es una pieza larga del
código R en el cual se puede escribir en una
línea por línea de base, pero probablemente
es mejor si se lee desde su archivo.
• Finalmente, todo en este color es data.
9. • Todos los objetos de R son de este color.
• Los objetos en este color no
necesariamente pueden ser escritos como
una consola de comandos.
• Toda función debe ir acompañada de
paréntesis para identificar que es una
función.
• La función linear de regresión lm se
representa como lm().
10. Comenzar con R
• En las maquinas *nix R se invoca escribiendo:
>R
• R responderá con el siguiente mensaje de
introducción:
R : Copyright 2006, The R Foundation for Statistical Computing Version
2.3.1(2006-06-01) ISBN 3-900051-07-0
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.
11. • Las máquinas que contienen Windows son ligeramente
diferentes en R ya que comenzará en una ventana que
llevará a otra, la cual actuará como terminal:
12. El menú y la barra de herramientas en la versión R de
Windows hace algunas funciones de R inmediatamente
accesibles sin cambiar la función esencial del programa
14. Barra de herramientas
Open Save Stop current
script Workspace Paste computation
Load Copy Copy and Print
workspace paste
15. El teclado “up”
• El teclado “up” en R trabaja de la misma
forma que la mayoría de las bases de
comandos de un teclado “up”.
• Cuando desarrollas una línea del código R
puedes correr la línea una y otra vez y
puedes modificar si es necesario sin tener
que reescribir la línea otra vez.
16. El Teclado “tab”
• El teclado “tab” para R en la mayoría de los
sistemas (incluyendo Windows) actúa de la
misma forma que la mayoría de *nix en las que
comienza con una función autocompleta.
• Cuando se presiona en el teclado “tab”, la línea
de comando de R busca la línea de comando
para saber si el usuario esta tratando de entrar
un nombre de archivo.
• El interpretador trata de adivinar lo más que
pueda del archivo y escanea el directorio de
trabajo y verifica si algún archivo parea con el
nombre del archivo entrado.
17. El Teclado “tab”
• Si es un directorio que contiene los archivos
“commands-01.r”, “commands-02.r” y
“commands-03.r”, entonces se escribe “c” y se
presiona “tab” para que R suba por ti el
“commands-0” hasta que encuentre una
ambigüedad.
• Luego seleccionas algunas opciones y presionas
el teclado “tab” nuevamente y escoges “1” para
auto-completar el nombre del primer archivo.
• Nuevamente presionas el teclado de “tab” para
suba el resto de “commands-01.r”.
18. Utilizando “help”
• Lo único que necesitas para adquirir ayuda en R es:
help.start()
• Luego podrás observar lo siguiente en pantalla:
Making links in per-session dir ...
If ’sensible-browser’ is already running, it is *not* restarted, and you
must
switch to its window.
Otherwise, be patient ...
• Lo que significa que si un navegador de internet ya está
trabajando, entonces el equipo completo de ayuda estará
disponible en esa instancia del navegador de internet, de lo
contrario el equipo completo de ayuda estará disponible en
una nueva instancia de los sistemas preferidos.
19. Utilizando “help”
• La función “help” es una serie de documentos
con hipervínculos, que guían al usuario en
todos los aspectos de la operación R.
• La mayoría de las funciones están archivadas
bajo “packages” y “base”.
• El motor de búsqueda disponible en la
pagina principal es bueno y la búsqueda por
palabra clave también disponible en la
pagina principal puede ser muy útil.
• Si no estas familiarizado con las librerías y
las funciones de R debe ser suficiente utilizar
el navegador básico de ayuda.
20. Utilizando “help”
• Si conoces en que necesitas ayuda puedes
utilizar la función help().
• Conocemos que la función de regresión lineal
es lm, entonces para encontrar ayuda con lm
se debe escribir:
>help(lm)
ó
>help("lm")
• Cualquiera de estos subirá la página de lm en
el sistema de navegación.
21. Utilizando “help”
• La versión con las comillas solo es útil
para esas funciones con varias palabras
de clave que necesitan ser alimentadas en
“help”.
• Esto sucede en los casos de ayuda en el
operador asignado <-, donde help(<-)
confunde a R, pero help("<-") consigue la
pagina para el operador <- en el sistemas
de navegación de internet.
22. Utilizando “help”
• Si no conoces la función en la cual
necesitas ayuda y no deseas utilizar el
navegador, entonces puedes utilizar la
función help.search().
• Si desea ayuda encontrando comandos
relacionados con regresión, entonces:
help.search("regression")
23. Utilizando “help”
• Donde aparecerá de retorno en la pantalla
Help files with alias or concept or title matching "regression" using
fuzzy matching:
eco(faraway) Ecological regression example
exa(faraway) Non parametric regression test data A
exb(faraway) Non parametric regression test data B
......
• Una explicación corta de una de las líneas
anteriores de este concepto es:
eco(faraway) Ecological regression example
24. Utilizando “help”
• eco(faraway) significa la función eco() de
la librería faraway.
• Para adquirir la pagina de ayuda para
eco() debe uno primero subir la librería
faraway y después la pagina eco().
library(faraway)
help(eco)
• El resultado será la pagina de ayuda para
la función eco que aparece en el sistema de
navegación de internet.
25. Utilizando “help”
• La función help.search() hará una búsqueda a
través de todas las funciones de todas las
librerías de las cuales la instalación R conoce.
• Desafortunadamente la función help() no
podrá subir en el sistema de navegación de
internet la pagina para cualquier función de
cualquier librería en la cual no fue cargada
para esa sección.
• Por esta razón la librería faraway debe ser
cargada con anterioridad.
27. Creando funciones simples
• Un objeto puede crearse diciéndole a R
cómo leer un archivo, creado como parte
de la corrida de un programa o
simplemente creando objetos directos
29. <-
• Utilizado como el único operador para
asignar valores en versiones antiguas de
R.
• En versiones recientes, podemos utilizar
“=” como operador de asignación.
• a <- 5
• a=5
30. • En este
ejemplo, asignamos el
valor 5 a la variable “a”
31. • Se prefiere “<-” como operador de
asignación para así no crear confusión con
las pruebas de equivalencias.
• Si por error escribimos sin comillas
(d <- a), lo que hacemos es asignarle al
valor de “a” a “d”.
33. • Si llamamos una variable que no existe o
que no ha sido creada, el programa indica
un error:
34. Listar objetos
• Para saber qué objetos hemos creado en la
sección activa de R, utilizamos la función
“R list” o “ls( )”.
• La función “ls( )”
no tiene
parámetros
35. Eliminar o suprimir objetos
• Para eliminar variables del ambiente de
trabajo activo utilizamos la función
“rm( )”
• Si se utiliza sin parámetros, rm( ) borra
todo lo que ls( ) mostraría en ese
momento.
• Si se utiliza con parámetros, remueve la
variable indicada y su valor
correspondiente.
38. Nombrando objetos
• Anteriormente trabajamos con a, b y c.
• Éstos son variables y no nombres de
objetos
• Los nombres de objetos en R son de la
forma:
– explaniatory.coefficient
• A pesar de permitirnos utilizar el punto
(.), los caracteres !, -, $, entre otros, no son
permitidos.
39. Nombrando objetos
• R nos brinda la función make.names() que
podemos utilizar para obtener versiones
permitidas para nombrar las funciones
con los caracteres indicados.
40. Funciones
• R es un lenguaje de programación
funcional
• El término funcional significa que emplea
o utiliza funciones para maximizar el
trabajo del programa.
41. Creando una función simple
• Abrimos la consola de R y escribimos:
• Esta función es llamada con dos
argumentos o parámetros (x y y).
• El cuerpo de la función:
– Suma los argumentos x y y
– los guarda en “result”
– El resultado se muestra en pantalla
42. Creando una función simple
• Nos devuelve un mensaje de error si:
– Utilizamos variables no inicializadas
– Utilizamos la función sin parámetros
– Si se escriben parámetros demás
– Si se escribe parámetros de menos
• Si sólo escribimos el nombre de la
misma, nos muestra la función.
44. Creando una función simple
• Todas las funciones se asignan de la
misma forma, utilizando el comando
“function( )”
• Dentro de los paréntesis se escribe la lista
de parámetros que la función creada.
45. Creando una función simple
• Si deseamos crear una función para
dividir:
• Esta nueva función se utiliza con dos
parámetros
• El primer parámetro es dividido por el
segundo
46. Creando una función simple
• Las funciones en R se escriben en una sola
línea
• En un programa tipo archivo o editor de
texto lo podemos escribir de forma larga
48. Creando vectores en R
• Para asignar el vector 1, 2, 3, 4 al objeto a:
• Utilizamos la función “c( )” para asignar
valores 1, 2, 3, 4 a a.
• Al asignarle varios valores a un
objeto, este se le llama “arreglo”.
• R permite realizar operaciones
matemáticas con los arreglos ya que es un
lenguaje de programación semi-orientado
50. Trabajando con vectores en R
• Si tratamos de sumar los arreglos de
diferente longitud, esperamos que R indique
un error, pero no es así.
• Estos valores se obtienen de:
– 1+5=6 • Como a tiene 4 elementos (1, 2, 3, 4) y
– 2+6=8 c sólo tiene 2 (5, 6) se parean:
– 3+5=8 • a(1) + b(1)
– 4 + 6 = 10 • a(2) + b(2)
• a(3) + b(1)
• a(4) + b(2)
51. Grabando una sesión en R
• *nix systems
• Save.image( )
– Es una función dependiente del sistema
operativo
– Se utiliza para guardar todo lo que tenemos
en el ambiente de trabajo
– Por defecto se genera un archivo llamado
“.RData“
52. Grabando una sesión en R
• Todo archivo comienza con una parada (.)
• Es un archivo oculto que luego de ser
llamado, necesitas de una función q( )
para poder salir.
• Si salimos de un ambiente de trabajo sin
guardar los cambios, luego no podemos
acceder los mismos.
53. Grabando una sesión en R
• Si guardamos nuestro ambiente de trabajo,
cuando abrimos uno nuevo, simplemente
llamamos a “.Rdata” y tenemos nuestro
ambiente anterior.
• A la hora de guardarlo, debemos observar
en el directorio en el cual se grabó para así
poder acceder sin problemas.
54. Grabando una sesión en R
• Utilizando la función save.image( )
podemos asignarle un nombre al ambiente
de trabajo
• Creamos un ambiente de trabajo llamado
“mysession”
• Para poder subir o cargar el
archivo, simplemente utilizamos:
55. Sistema Windows
• Para guardar el ambiente de trabajo en R
utilizamos las funciones:
– Save workspace
– Load workspace
56. Trabajando con archivos
• La idea de trabajar con archivos viene de
la posibilidad de añadir líneas de
programación o comandos adicionales en
un ambiente de trabajo en varias sesiones
diferentes.
57. Almacenando comandos
• Los archivos de texto en R son simples
• Pueden ser editados en cualquier
programa que trabaje con texto
• Algunas aplicaciones que pueden
utilizarse son:
– Wordpad
– Word
– Notepad
65. Lanzamiento de un dado
• Esta función simula el lanzamiento de un dado
una sola vez.
• Devuelve “TRUE” si el valor es par (2, 4 ó 6)
• Devuelve “FALSE” si el valor es impar (1, 3 ó 5)
66. Lanzamiento de un dado
• Buscamos la
función a través
de R
• Ésta se ejecuta
sin
parámetros, ya
que inicializamos
tiros = 1
67. Lanzamiento de un dado
(5000 veces)
• Esta función simula el lanzamiento de un dado
5000 veces.
• Calcula la probabilidad empírica
• Genera una gráfica con los resultados obtenidos
70. Lanzamiento de un dado
(varias veces)
• Esta función simula el lanzamiento de un dado la
cantidad de veces indicada a través de su parámetro.
• Calcula la probabilidad empírica
• Genera una gráfica con los resultados obtenidos
Podemos hacer referencia a x=x1+x2+x3 discutido en clase el pasado 13 de marzo de 2012.
Podemos hacer referencia a x=x1+x2+x3 discutido en clase el pasado 13 de marzo de 2012.
Podemos hacer referencia a x=x1+x2+x3 discutido en clase el pasado 13 de marzo de 2012.
Es una técnica de programaciónparaguardar u obtenerfragmentos de cualquierlenguaje de programación, incluyendo a R.
En las computadoras del salón de clases no se pueden guardar los ambientes de trabajo, ya que es necesario poseer privilegios de administrador para poder grabar en el disco duro.