Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo...
-
Upload
armando-hernadez -
Category
Documents
-
view
16 -
download
3
Transcript of Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo...
![Page 1: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/1.jpg)
Introducción al lenguaje R
Sesión 2: Objetos en R
Instructor:
Noé Becerra Rodríguez
28 de mayo 2014
![Page 2: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/2.jpg)
Ayuda en R - Kurtosis
2
![Page 3: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/3.jpg)
Ayuda en R - Kurtosis
3
![Page 4: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/4.jpg)
Ayuda en R - Kurtosis
4
![Page 5: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/5.jpg)
Ayuda en R - Kurtosis
5
![Page 6: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/6.jpg)
Ayuda en R - Kurtosis
?na.rm
![Page 7: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/7.jpg)
Manejo de paquetes en R
Mirrors
Memoria ROMAlmacenamiento
Memoria RAMVolátil
Install.packages(“tree”)
library(tree)
7
![Page 8: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/8.jpg)
Operaciones básicas en R
![Page 9: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/9.jpg)
¿preguntas?
9
![Page 10: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/10.jpg)
Sesión 2
• Contenido
• Instalación de RStudio
• Tipos de objetos en R
• Operaciones con vectores y matrices
• Manipulación de matrices y vectores
10
![Page 11: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/11.jpg)
Problemas con RProblemas con el ambiente original de R
¿Cómo revisar el workspace?
> ls( )
¿Cómo visualizar la historia de los comandos?
> history( )
¿Cómo saber que paquetes tengo instalados o cargados en memoria?
> installed.packages( )
> sessionInfo( )
¿Cómo ver el contenido de la carpeta de R?
> dir( )
Rstudio es un IDE para R que permite un manejo más cómodo de los elementos del ambiente R! 11
![Page 12: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/12.jpg)
Sesión 2
• Contenido
• Instalación de RStudio
• Tipos de objetos en R
• Operaciones con vectores y matrices
• Manipulación de matrices y vectores
12
![Page 14: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/14.jpg)
Instalación RStudio
14
![Page 15: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/15.jpg)
Instalación RStudio
15
![Page 16: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/16.jpg)
Instalar RStudio
• Doble click en el archivo que se bajó
• Dar “siguiente” unas pocas veces
• Usar la configuración por “default”
• Finalizar la instalación
16
![Page 17: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/17.jpg)
¿preguntas?
17
![Page 18: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/18.jpg)
Pantalla de RStudio
18
![Page 19: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/19.jpg)
Sesión 2
• Contenido
• Instalación de RStudio
• Tipos de objetos en R
• Operaciones con vectores y matrices
• Manipulación de matrices y vectores
19
![Page 20: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/20.jpg)
Tipos de objetos en RVectores - variables con uno o más valores del mismo tipo (lógico, numérico o de cadena (alfanumérico)
Abrir un nuevo script en RStudio
>vec1=c(1,3,4,6,8,10,12,16)
> vec1
[1] 1 3 4 6 8 10 12 16
R permite también el manejo de vectores de cadena o carácter
> cadena1="a b c d e f g"
R también utiliza vectores lógicos
> lógico=c(TRUE, TRUE, FALSE, FALSE, TRUE)
Ejercicio.
1.Definir 3 vectores numéricos (vec2, vec3, vec4)
2. Sumar y restar dos vectores 20
![Page 21: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/21.jpg)
Tipos de objetos en RLos objetos tienes dos propiedades que resultan muy útiles: mode(x) y length(x)
La multiplicación normal de vectores no obtiene el producto interno, sino el producto elemento a elemento. La función sum(x*y) sí da el producto interno de un vector
Ejercicios
1. Aplicar la función mode y length a los vectores que se definieron en el ejercicio anterior
2. Multiplicar 2 vectores
3. Obtener el producto interno de esos mismos vectores
Al multiplicar dos vectores de diferente dimensión, el vector más corto se “recicla”. Ejemplo:
> a1=c(2,3,5,7,9,12,15,20)
> b1=c(1,2)
> a1*b1 21
![Page 22: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/22.jpg)
VectoresLas funciones cbind(x,y) y rbind(x,y) unen los vectores x e y por columnas o por renglones respectivamente
> x1=c(1,2,3); y1=c(4,5,6)
> cbind(x1,y1)
x1 y1
[1,] 1 4
[2,] 2 5
[3,] 3 6
> rbind(x1,y1)
[,1] [,2] [,3]
x1 1 2 3
y1 4 5 622
![Page 23: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/23.jpg)
dataframes
Ejercicios
1.Construir 3 vectores numéricos y unirlos por renglón
2. Esos mismos 3 vectores unirlos ahora por columna
23
![Page 24: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/24.jpg)
Operaciones con vectores en R
24
![Page 25: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/25.jpg)
Ejercicio
1. Construir un vector y calcular las varias operaciones en esos datos
2. Con el siguiente vector calcular algunas operaciones de vectores
> vectorx=c(1:12, NA, NA, NA,16:20)
> vectorx
25
![Page 26: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/26.jpg)
Sesión 2
• Contenido
• Instalación de RStudio
• Tipos de objetos en R
• Operaciones con vectores y matrices
• Manipulación de matrices y vectores
26
![Page 27: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/27.jpg)
MatricesUna matriz es un arreglo de números, existen diversas maneras de construir una matriz además de rbind( ) y cbind( ). Por “default” las matrices en R se llenan por columna
> matrix(c(1, 2, 3, 4, 5, 6, 7, 8, 9), nrow = 3)
> matrix(1:8, ncol = 2)
> matrix(c(1, 2, 3, 4, 5, 6, 7, 8, 9), ncol = 9)
> vector10=c(1:9)
> matrix(vector10, nrow = 3)
En caso de que el vector que está llenando la matriz no tenga suficientes elementos, se recicla el vector
> vector1=c(1:8)
> matrix(vector1, nrow=3) 27
![Page 28: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/28.jpg)
Operaciones con Matrices> matriz1=matrix(1:9, nrow=3);
> matriz2=matrix(10:18, nrow=3)
Sumar un escalar a una matriz
> matriz1
> matriz1 + 2
Producto de un escalar por una matriz
> matriz2
> matriz2 * 3
Suma de dos matrices (deben ser conformes con la suma!
> matriz1
> matriz2
> matriz1 + matriz2 28
![Page 29: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/29.jpg)
Operaciones con matricesEjercicio. Dadas las siguientes matrices:
4 -1 0 3 8 3
A = 6 9 , B = 3 -2 y C = 6 1 hallar:
a)A + B
b) C - A
c)3*B
d) 4*B + 2*C
29
![Page 30: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/30.jpg)
Operaciones con MatricesLa multiplicación de matrices de álgebra lineal es:
> matriz1 %*% matriz2
PERO NO
> matriz1 * matriz2
Que da el producto elemento a elemento!
Necesario que las matrices sean conformes con el producto para la multiplicación de álgebra lineal!!
El determinante de una matriz
> det (x)
La transpuesta de una matriz
> t (matriz1)
La inversa de una matriz
> solve (matriz1) 30
![Page 31: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/31.jpg)
Operaciones con MatricesEl comando solve() permite obtener la inversa de una matriz dada u obtener el vector solución de un sistema de ecuaciones lineales si los argumentos son la matriz de coeficientes y el vector de las y
solve(A,b) # donde A es la matriz de coeficientes y b es el vector de las y
Ejercicio. Hallar el vector solución de los siguientes sistemas de ecuaciones lineales
2x + 3y + z = 12
x + y - z = 4
3x - y + 2z= 6
x + 2y – z = 32
2x + y + z = 16
-4x – 2y + z = 1231
![Page 32: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/32.jpg)
Operaciones con Matrices
> diag(x) # x es un vector
> diag(A) # A es una matriz
> diag(k) # k es una constante
> y=eigen(A) # calcula los valores y vectores propios de la matriz 2
> y$val # da los valores propios de A
> y$vec # obtiene los vectores propios de A
32
![Page 33: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/33.jpg)
Ejercicios
Hallar los valores y vectores propios de la siguientes matrices
1 2 -2
2 1 2
-4 -2 2
2 3 1
-2 -1 4
1 1 -133
![Page 34: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/34.jpg)
Sesión 2
• Contenido
• Instalación de RStudio
• Tipos de objetos en R
• Operaciones con vectores y matrices
• Manipulación de matrices y vectores
34
![Page 35: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/35.jpg)
Manipulación de matricesR permite manipular la matrices de manera sencilla con el indexador [ ]
> matriz1
[,1] [,2] [,3]
[1,] 1 4 7
[2,] 2 5 8
[3,] 3 6 9
Los números entre corchetes indican la columna y el renglón y sirven para modificar la matrices o extraer elementos de ella
> matriz1[1, 3] # muestra el elemento del renglón 1 columna 3
> matriz1[ 2, ] # muestra el renglón 2
> matriz1[,-2] # elimina la columna 2
> matriz1[1, 1] = 15 # asigna el valor 15 en el renglón 1 columna1
> matriz1 35
![Page 36: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/36.jpg)
Manipulación de matrices
> matriz1[ ,2:3 ] = 2 # asigna 2 a las columnas 2 y 3
> matriz1
> matriz1[ ,2:3 ] = 4:9 # asigna la secuencia 1 a 9 en las columnas 2 y 3
> matriz1
> matriz1[matriz1 > 5] # muestra los valores mayores que 5 en la matriz
> matriz1 > 5 # operador lógico que muestra qué valores son mayores a 5
> matriz1[matriz1 >= 8] = 3 # asigna 3 a los valores que son mayores a 8
36
![Page 37: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/37.jpg)
Tarea1.Calcular la matriz inversa y los valores y vectores propios de las
siguientes matrices
-2 2 1
2 1 2
2 -2 -4
1 3 2
-4 -1 2
-1 1 137
![Page 38: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/38.jpg)
TareaResolver los siguiente sistemas de ecuaciones lineales. En primera instancia sin utilizar la función solve( ) y después usando este comando para verificar las operaciones realizadas
x + 2y + 3z = 24
4x + 5y + 6z = 32
7x + 8y + 9z = 41
x + 2y + 3z = 24
4x + 5y + 6z = 32
7x + 8y - 9z = 41
38
![Page 39: Introducción al lenguaje R Sesión 2: Objetos en R Instructor: Noé Becerra Rodríguez 28 de mayo 2014.](https://reader033.fdocuments.net/reader033/viewer/2022061301/54dc10844979599e0a8b5241/html5/thumbnails/39.jpg)
¿preguntas?
http://nbecerrastatistics.wordpress.com/
39