Académique Documents
Professionnel Documents
Culture Documents
1. Historia del R
R es una implementación libre, independiente, “open-source” del lenguaje de
programación S que actualmente es un producto comercial llamado S-PLUS
y es distribuido por Insightful Corporation.
El lenguaje S, fue escrito a mediados de los años 70 en Bell Labs (de AT&T
y actualmente Lucent Technologies).
Originalmente R fue un programa para el sistema operativo Unix. Sin
embargo, R ahora puede obtenerse también en versiones para Windows y
Macintosh y Linux.
A pesar de que hay diferencias menores entre R y S-PLUS (la mayoría en la
interfase gráfica), son esencialmente idénticos.
El proyecto R fue iniciado por Robert Gentleman y Ross Dhaka (de donde se
deriva “R”) del Statistics Department in the University of Auckland en Nueva
Zelanda en 1993.
En la actualidad, R es mantenido por un grupo internacional de
desarrolladores voluntarios: Core development team.
R forma parte de un proyecto colaborativo y abierto. Sus usuarios pueden
publicar paquetes que extienden su configuración básica. Existe un repositorio
oficial de paquetes cuyo número superó en otoño de 2009 la cifra de los 2000.
Dado el enorme número de nuevos paquetes, éstos se han organizado
en vistas (o temas), que permiten agruparlos según su naturaleza y función.
Por ejemplo, hay grupos de paquetes relacionados con estadística
bayesiana, econometría, series temporales, etc.
1
UNIVERSIDAD NACIONAL AGRARIA LA MOLINA
Ministerio del Medio Ambiente
Curso de R
2. Obtención e Instalación del programa R
Ingresar a la página http://www.r-project.org/ y seleccionar CRAN
2
UNIVERSIDAD NACIONAL AGRARIA LA MOLINA
Ministerio del Medio Ambiente
Curso de R
Seleccionar el subdirectorio base
3
UNIVERSIDAD NACIONAL AGRARIA LA MOLINA
Ministerio del Medio Ambiente
Curso de R
3. Instalación del RStudio
Una vez que haya descargado e instalado R, puede descargar e
instalar RStudio.
RStudio es el entorno de desarrollo integrado para utilizar R. Está disponible
en código abierto y se ejecuta en el escritorio Windows, Mac y Linux) o en la
web con RStudio Server.
RStudio es software independiente que trabaja con R para hacerlo mucho
más fácil de usar y a la vez añade algunas características útiles.
Para poder instalar RStudio hay que ingresar a la dirección
https://www.rstudio.com/, con lo aparecerá la siguiente pantalla:
4
UNIVERSIDAD NACIONAL AGRARIA LA MOLINA
Ministerio del Medio Ambiente
Curso de R
5
UNIVERSIDAD NACIONAL AGRARIA LA MOLINA
Ministerio del Medio Ambiente
Curso de R
o Files, que da acceso al árbol de directorios y ficheros del disco
duro.
o Plots, donde aparecen los gráficos creados en la consola.
o Packages, que facilita la administración de los paquetes de R
instalados en la máquina.
o Help, en el que se abren las páginas de ayuda.
4.1 La consola
Es el área donde el usuario debe escribir las instrucciones necesarias para
poder ejecutarlas. Para su ejecución solo se debe presionar la tecla enter
después de la instrucción Así mismo, en ella aparecen los resultados
obtenidos al ejecutar las instrucciones.
La línea de ordenes (prompt) esta identificada con el símbolo “>”.
La línea de resultados de operaciones básicas esta identificada con el
símbolo “ “.
Si la orden es demasiado grande, se puede presionar enter y el sistema le
indica con un “+” para continuar escribiendo. También si la orden no esta
terminada correctamente (por ejemplo le falta cerrar un paréntesis) en la línea
de ordenes aparecerá el símbolo “+”.
Los gráficos se presentan en otra ventana independiente.
6
UNIVERSIDAD NACIONAL AGRARIA LA MOLINA
Ministerio del Medio Ambiente
Curso de R
Paquetes: Es la opción más importante de la barra de menú. Permite cargar,
instalar o actualizar un paquete externo a la base existente para que puede
ser utilizado.
Windows: Usado para manejar las ventanas activas.
Ayuda: Es la ayuda del programa.
Limpiar la consola
Se puede hacer de tres manera diferentes:
Usar la opción de la Barra de Menú
Editar / Limpiar consola.
Click con el botón derecho del mouse elegir limpiar pantalla.
Presione las teclas ctrl y “L” simultáneamente.
Cargar paquetes
R permite cargar paquetes que ya se encuentran instalados; para poder
realizar esta acción se puede hacer uso de la opción de la Barra de Menú
Paquetes / Cargar paquetes, con lo cual aparecerá una ventana donde se
podrá visualizar todos los paquetes que ya se encuentran instalados
(ordenados alfabéticamente). Se debe elegir el paquete que se debe utilizar
y dar un clic en el botón Ok.
Otra forma de cargar un paquete es usar el comando library
library(nombre del paquete).
7
UNIVERSIDAD NACIONAL AGRARIA LA MOLINA
Ministerio del Medio Ambiente
Curso de R
Instalar paquetes
R permite instalar paquetes nuevos y adicionarlos a los que ya se encuentran
instalados; para poder realizar esta acción se puede hacer uso de la opción
de la Barra de Menú
Paquetes / Instalar paquete(s)
8
UNIVERSIDAD NACIONAL AGRARIA LA MOLINA
Ministerio del Medio Ambiente
Curso de R
Ayuda en R
Para pedir ayuda sobre el uso de las funciones en R se puede utilizar una de
las siguientes dos opciones: ?nombre de función y help(nombre de función).
Por ejemplo
?print
help(sqrt)
Para pedir ayuda sobre el contenido de un paquete se puede usar:
help(package=foreign)
9
UNIVERSIDAD NACIONAL AGRARIA LA MOLINA
Ministerio del Medio Ambiente
Curso de R
6. Manejo de datos
6.1 Asignaciones de objetos
Hay varios operadores con los que es posible realizar asignaciones a objetos,
estos son: "<-" signo menor seguido del signo menos (sin espacios), “->”signo
menos seguido del signo mayor y por el signo igual “=”.
Ejemplos
Asignar la suma de 3+5 al objeto A
A = 3+5
A
[1] 8
10
UNIVERSIDAD NACIONAL AGRARIA LA MOLINA
Ministerio del Medio Ambiente
Curso de R
Ejemplos:
text=as.character(num1)
text
[1] "2.345"
is.character(text)
[1] TRUE
Matrices
Las matrices se crean con la función matrix
matrix(data, nrow, ncol, byrow)
data: Es un vector de datos.
nrow: Número de filas que tiene la matriz.
ncol: Número de columnas que tiene la matriz.
byrow: FALSE, la matriz es llenada por columnas; TRUE la matriz es llenada por
filas.
Una forma práctica de crear una matriz es indicar su dimensión e iniciándola
con ceros para después digitar en un formato de celdas, los valores de sus
filas y columnas mediante el comando fix.
Ejemplo:
11
UNIVERSIDAD NACIONAL AGRARIA LA MOLINA
Ministerio del Medio Ambiente
Curso de R
Crear la matriz datos1 que contenga los siguientes datos de pesos, estaturas
y edad de 4 personas:
64.3 1.67 28
72.0 1.70 32
datos
56.9 1.62 26
87.3 1.72 34
datos1=matrix(0,4,2)
fix(datos)
Nota: Para poder visualizar los vectores o matrices se debe digitar el nombre
del objeto o print(nombre del objeto)
Dataframes
Los componentes de este tipo de datos son vectores (numéricos, caracteres, o
lógicos), factores, matrices numéricas o otros data.frames.
Los vectores deben de tener la misma longitud.
Se define con la función data.frame( )
Ejemplo
dataframe1=
data.frame(nombres=c("Clase1","Clase2","Clase3"),v1=c(3,
4,6),v2=c(3,4,1))
dataframe1
nombres v1 v2
1 Clase1 3 3
2 Clase2 4 4
3 Clase3 6 1
Cuando hay datos que no son numéricos, el data.frame los considera como
factores tomando como niveles la cantidad de valores diferentes que hay.
str(dataframe1)
'data.frame': 3 obs. of 3 variables:
$ nombres: Factor w/ 3 levels "Clase1","Clase2",..: 1 2 3
$ v1 : num 3 4 6
$ v2 : num 3 4 1
12
UNIVERSIDAD NACIONAL AGRARIA LA MOLINA
Ministerio del Medio Ambiente
Curso de R
La opción header=T es un valor lógico que se utiliza siempre y cuando las
variables (columnas) presenten etiquetas. Caso contrario se debe usar
header=F)
Para mostrar los objetos que empiezan con un determinado carácter, usar
ls(pattern="^caracter")
Ejemplo:
ls(pattern="^d")
13
UNIVERSIDAD NACIONAL AGRARIA LA MOLINA
Ministerio del Medio Ambiente
Curso de R
6.9 Operaciones con Objetos
a) Operadores Aritméticos
Las operaciones + (suma), - (diferencia), * (producto), / (cociente) realizadas
en vectores y/o matrices se realizan término a término. Por ejemplo
Restar los vectores fila1 y fila 2, guardarlos en el objeto resul1
resul1=fila1-fila2
[1] -7.70 -0.03 -4.00
Ejemplos
15%/%3
[1] 5
15%%2
[1] 1
Nota: Si desea hacer una consulta sobre estos operadores puede digitar
help(Arithmetic) o ? Arithmetic
14
UNIVERSIDAD NACIONAL AGRARIA LA MOLINA
Ministerio del Medio Ambiente
Curso de R
Algunas funciones matemáticas
abs(nombre del objeto): Permite obtener el valor absoluto de los
elementos que componen un objeto.
sqrt(x): Permite obtener la raíz cuadrada de los elementos que componen
un objeto.
exp(x): Calcula ex de los elementos que componen un objeto.
log(x): Calcula ln(x) de los elementos que componen un objeto.
log10(x): Calcula log(x) de los elementos que componen un objeto.
log2(x): Calcula log2(x) de los elementos que componen un objeto.
log(x,b): Calcula logb(x) de los elementos que componen un objeto.
factorial(k): Permite obtener el factorial de los elementos que componen
un objeto.
choose(n,k): Permite obtener la combinación de n y k.
Ejemplos:
Sea el vector x = c(1,2,3,4,5), obtenga el vector módulo de dividir x
entre 2, guárdelo en el objeto resul5
x = c(1,2,3,4,5)
resul5=x%%2
resul5
[1] 1 0 1 0 1
Calcule el factorial de x
factorial(x)
[1] 2.400000e+01 4.032000e+04 2.092279e+13
15
UNIVERSIDAD NACIONAL AGRARIA LA MOLINA
Ministerio del Medio Ambiente
Curso de R
Funciones de redondeo de números:
ceiling(x): al entero más cercano no menor que el elemento
floor(x) : el entero más cercano no mayor que el elemento
round(x,digitos): tiene dos argumentos, el primero es el número que se
quiere redondear y el segundo argumento es el número de decimales.
trunc: al entero más cercano entre el elemento y cero.
Ejemplos:
num1=2.345
floor(num1)
[1] 2
ceiling(num1)
[1] 3
trunc(num1)
[1] 2
round(num1,2)
[1] 2.35
b) Operadores Lógicos
Sirven para realizar comparaciones y expresiones lógicas. Algunos
operadores lógicos son:
! x , es la negación de x
x & y, es la intersección, operador lógico y. T y T da T, otro par de
comparaciones da F.
x | y, es la unión, operador lógico o. F y F da F, otro par de comparaciones
da T.
c) Operadores Relacionales
Al igual que los operadores lógicos sirven para realizar comparaciones y
expresiones lógicas. Algunos operadores relacionales son:
> (mayor que)
< (menor que)
>= (mayor igual)
<= (menor igual)
== (igual)
!= (diferente).
Los resultados son verdadero (TRUE) o falso (FALSE).
Ejemplos:
Sean los vectores v1=c(5,3,9) y v2=c(3,1,10), guardarlos en el objeto resul8
Indique que elementos de v1 son diferentes a 3
resul8=v1!=3
[1] TRUE FALSE TRUE
Comparar si los elementos del vector v1 son superiores a los del vector v2,
guardarlos en el objeto resul9
resul9=v1>v2
[1] TRUE TRUE FALSE
16
UNIVERSIDAD NACIONAL AGRARIA LA MOLINA
Ministerio del Medio Ambiente
Curso de R
Compare que elementos de resul8 y resul9 para obtener el vector resul10
que indique como verdadero los elementos en ambos vectores.
resul10=resul8&resul9
[1] TRUE FALSE FALSE
Ejemplo
Multiplicar la matriz datos1 por la transpuesta de la matriz datos3, dividir
el resultado entre 2, guardarlos en el objeto resul9. Compare el resultado
con resul4
resul9=(datos1%*%t(datos3))/2
Ejemplos:
Sea m1 una matriz de dimensiones 3x3
12 6 10
m1 4 4 9
10 5 9
Calcule la inversa de la matriz m1, guárdelo en resul10
resul10=solve(m1)
[,1] [,2] [,3]
col1 -0.5625 -2.500000e-01 0.875
col2 3.3750 5.000000e-01 -4.250
col3 -1.2500 -3.330669e-16 1.500
17
UNIVERSIDAD NACIONAL AGRARIA LA MOLINA
Ministerio del Medio Ambiente
Curso de R
Vectores
Sea el vector x=seq(0,n), donde n=10
x[n]: Presenta la n-ésima observación.
x[-n]: Presenta las observaciones menos la n-ésima observación.
x[1:n]: Presenta las primeras n-observaciones.
x[-(1:n)]: Presenta los elementos a partir de la observación n+1.
x[c(3,7,9)]: Presenta las observaciones de ubicación 3, 7 y 9.
x[x>4]: Presenta las observaciones mayores a 4.
x[x>3&x<5]: Presenta las observaciones mayores a 3 y menores a 5.
x[x>3|x<5]: Presenta las observaciones mayores a 3 o menores a 5.
x[x%%2==0]: Presenta las observaciones cuyo módulo (entre 2) es igual a
cero.
Matrices
x[i,j] Selecciona el elemento de la i-ésima fila y la j-ésima columna.
x[i,]: Selecciona los elementos de la i-ésima fila.
x[,j]: Selecciona los elementos de la j-ésima columna.
x[,c(1,3)]: Selecciona las columnas una y tres.
x[c(1,3),]: Selecciona las filas una y tres.
18
UNIVERSIDAD NACIONAL AGRARIA LA MOLINA
Ministerio del Medio Ambiente
Curso de R
Ejemplo:
length(col2)
19
UNIVERSIDAD NACIONAL AGRARIA LA MOLINA
Ministerio del Medio Ambiente
Curso de R
rbind(objeto1, objeto2,….): Permite unir vectores o matrices por filas, que
deben ser de igual longitud o igual dimensión.
Ejemplo
rbind(a,b)
20
UNIVERSIDAD NACIONAL AGRARIA LA MOLINA
Ministerio del Medio Ambiente
Curso de R
Ejercicios Propuestos
x
b a b
2. Verifique con un ejemplo si las siguientes operaciones xa y son
similares en R.
3. Presente la función, con sus argumentos, que permita obtener los siguientes
vectores:
5 10 15 20 25 30 35 40 45 50 55 60
-3 -4 -5 -6 -7 -8 -9 -10 –11
-3 -1 1 3 5 7 9 11
5 5 5 4 4 4 4 7 7 7 7 7
1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3
El tercer vector repetido 10 veces.
1 2 2 3 3 3 4 4 4 4 5 5 5 5 5
5. Con el conjunto de datos CO2 elabore una tabla que cruce las variables Type
y Treatment pero solo de las primeras 40 observaciones.
¿Es posible extraer alguna frecuencia de la tabla? Si su respuesta es
afirmativa extraiga la frecuencia ubicada en la primera fila y segunda columna
de la tabla y guárdelo en el objeto frec12.
21
UNIVERSIDAD NACIONAL AGRARIA LA MOLINA
Ministerio del Medio Ambiente
Curso de R
8. Use las funciones adecuadas para presentar un vector conteniendo todos los
enteros del 1 al 100 que no son divisibles por 2 y 3 a la vez.
i
X
S2 i 1
n1
Utilice las funciones necesarias para realizar el cálculo de la varianza de la
primera variable del conjunto de datos women, compare su resultado con el
de la función var.
Donde:
X: Es la matriz de variables independientes incluyendo un vector de unos, es
decir:
1 x11 x12 x13 x1p
1 x 21 x 22 x 23 x 2p
X 1 x 31 x 32 x 33 x3 p
1 x n1 xn 2 xn 3 xnp
Y: Es el vector de la variable dependiente.
Utilice el conjunto de datos rock, considerando a la última variable (perm)
como variable dependiente y al resto de variables como independientes y
estime los coeficientes del modelo de regresión lineal múltiple.
22