SlideShare una empresa de Scribd logo
1 de 7
Lenguaje R: Sesión 3
ING. LUIS FERNANDO AGUAS B
2Sesión 3 – Arrays y matrices
Arrays.
Un array es un conjunto de datos de k dimensiones. El caso más sencillo se da con
k=2, lo que llamaremos matriz (matrix). Todos los elementos de un array han de
ser del mismo tipo.
En R cualquier array ha de tener asociado un atributo llamado dim que indique los
límites superiores de cada una de las dimensiones. Por definición el límite inferior
es 1.
> a <- 1:42 # Creamos un vector de 42 posiciones
# Lo transformamos en un array añadiéndole el límite superior de cada dimensión. En este caso en un array de
# tres dimensiones de longitudes 3, 7 y 2. Nótese que las dimensiones que se “mueven” más rápido son las de
# más a la izquierda.
> dim(a) <- c(3,7,2)
> a
, , 1
[,1] [,2] [,3] [,4] [,5] [,6] [,7]
[1,] 1 4 7 10 13 16 19
[2,] 2 5 8 11 14 17 20
[3,] 3 6 9 12 15 18 21
, , 2
[,1] [,2] [,3] [,4] [,5] [,6] [,7]
[1,] 22 25 28 31 34 37 40
[2,] 23 26 29 32 35 38 41
[3,] 24 27 30 33 36 39 42
3Sesión 3 – Arrays y matrices
Indexación de arrays (1).
Los arrays se indexan exactamente igual que los vectores. En este caso tenemos
que establecer un vector de índices (sesión 2) para cada dimensión del array. Los
diferentes vectores se pondrán separados por comas y toda la indexación también
irá entre corchetes ([]).
Si sobre una determinada dimensión no queremos aplicar ningún tipo de selección
simplemente dejaremos el espacio correspondiente a esa dimensión en blanco.
# Del array anterior seleccionamos la posición 1, 4, 2
> a[1,4,2]
[1] 31
# Ahora fijamos las dos primeras dimensiones y dejamos libre la tercera
> a[2,4,]
[1] 11 32
# a[,2,] es un array con vector de dimensiones c(3,2) y vector de datos que contiene los valores
# c(a[1,2,1], a[2,2,1], a[3,2,1], a[1,2,2], a[2,2,2], a[3,2,2])
> a[,2,]
[,1] [,2]
[1,] 4 25
[2,] 5 26
[3,] 6 27
Un array también se puede indexar con un único array de índices. Dicho array
tendrá tantas columnas como dimensiones tenga el array de donde se quieren
subseleccionar los elementos y un números de filas indeterminado, que equivaldrá
al número de elementos que queramos seleccionar. En el caso de las matrices el
proceso se hace más claro.
# Generamos una matriz 4 * 5
> x <- 1:20
> dim(x) <- c(4,5)
> x
[,1] [,2] [,3] [,4] [,5]
[1,] 1 5 9 13 17
[2,] 2 6 10 14 18
[3,] 3 7 11 15 19
[4,] 4 8 12 16 20
# Ahora queremos seleccionar los elementos x[1,3], x[2,2] y x[3,1]. Para eso crearemos el array de índices,
# que en este caso tendrá dos columnas y tres filas.
> i <- c(1,2,3,3,2,1) #Vector de valores
> dim(i) <- c(3,2) #Vector de dimensiones
> i
[,1] [,2]
[1,] 1 3
[2,] 2 2
[3,] 3 1
4Sesión 3 – Arrays y matrices
Indexación de arrays (2).
5Sesión 3 – Arrays y matrices
Indexación de arrays (3)
# Vemos los elementos seleccionados
> x[i]
[1] 9 6 3
# Ponemos esos elementos a cero
> x[i] <- 0
> x
[,1] [,2] [,3] [,4] [,5]
[1,] 1 5 0 13 17
[2,] 2 0 10 14 18
[3,] 0 7 11 15 19
[4,] 4 8 12 16 20
Además de con un vector de datos y un atributo dim, los arrays también pueden
ser construídos con la función array, a la cual se le ha de pasar como argumentos
el vector de valores y el vector de dimensiones. Esta función actúa igual que el
método “manual”, pero acepta vectores de dimensiones que no encajen
exactamente con el tamaño del vector de datos (reciclaje).
> Z1 <- array(x,dim=c(4,5)) # Creamos el mismo array que antes
> Z2 <- array(x,dim=c(5,5)) # Los valores del vector de datos se reciclan
> Z3 <- array(x,dim=c(4,4)) # Hay valores del vector de datos que no se incluyen en el nuevo array
La función array
6Sesión 3 – Arrays y matrices
Facilidades con matrices (1)
Las matrices son una particularización de los arrays, donde el número de
dimensiones es 2. Debido a su gran uso, R dispone de funciones espécificas para
matrices.
Al igual que la función array, la función matrix nos
permite crear matrices.
# Creamos una matriz de dimensiones 5 * 4 con la función matrix.
# Si queremos que la llene por filas le añadiremos el parámetro
# byrow=TRUE.
> a <- matrix(1:20,5,4)
> a
[,1] [,2] [,3] [,4]
[1,] 1 6 11 16
[2,] 2 7 12 17
[3,] 3 8 13 18
[4,] 4 9 14 19
[5,] 5 10 15 20
# Miramos las dimensiones. También lo podemos hacer con la función dim.
> nrow(a)
[1] 5
> ncol(a)
[1] 4
Función
número filas
número columnas
producto matricial
transposición
diagonal
Operador
nrow
ncol
%*%
t
diag
7Sesión 3 – Arrays y matrices
Facilidades con matrices (2)
R permite utilizar los operadores matemáticos clásicos (+, - , *, /,...) para
operaciones con matrices de mismas dimensiones. En este caso se realiza la
operación para cada par de elementos
# Creamos dos matrices de iguales dimensiones
> a <- matrix(1:20,5,4)
> b <- matrix(21:40,5,4,byrow=TRUE)
# Ahora podemos hacer operaciones con las dos matrices
> a + b #Suma posición a posición.
[,1] [,2] [,3] [,4]
[1,] 22 28 34 40
[2,] 27 33 39 45
[3,] 32 38 44 50
[4,] 37 43 49 55
[5,] 42 48 54 60
Las matrices también se pueden construir a base de la unión de vectores
individuales, ya sea apilándolos por filas o por columnas. Para eso tenemos las
funciones rbind y cbind. Para transformar un array en vector utilizaremos la función
as.vector
> rbind(1:5,11:15,21:25) #Apilamos tres vectores por filas. El resultado es un objeto de tipo matrix.
[,1] [,2] [,3] [,4] [,5]
[1,] 1 2 3 4 5
[2,] 11 12 13 14 15
[3,] 21 22 23 24 25

Más contenido relacionado

La actualidad más candente

La actualidad más candente (19)

Arrays multidimensionales pdf
Arrays multidimensionales pdfArrays multidimensionales pdf
Arrays multidimensionales pdf
 
16 Curso de POO en java - arreglos unidimensionales
16 Curso de POO en java - arreglos unidimensionales16 Curso de POO en java - arreglos unidimensionales
16 Curso de POO en java - arreglos unidimensionales
 
Practica 1 Introduccion Al R
Practica 1 Introduccion Al RPractica 1 Introduccion Al R
Practica 1 Introduccion Al R
 
Desarrollo de ejercicios básicos en matlab
Desarrollo de ejercicios básicos en matlabDesarrollo de ejercicios básicos en matlab
Desarrollo de ejercicios básicos en matlab
 
Matrices en java
Matrices en javaMatrices en java
Matrices en java
 
Guia 2 matlab
Guia 2 matlabGuia 2 matlab
Guia 2 matlab
 
Graficas en matlab 2 d y 3d
Graficas en matlab 2 d y 3dGraficas en matlab 2 d y 3d
Graficas en matlab 2 d y 3d
 
Tutorial de derive 6
Tutorial  de derive 6Tutorial  de derive 6
Tutorial de derive 6
 
Gráficas en matlab
Gráficas en matlabGráficas en matlab
Gráficas en matlab
 
Referencias MATLAB
Referencias MATLABReferencias MATLAB
Referencias MATLAB
 
Ejercicios de limites y funciones final 1
Ejercicios de limites y funciones final 1Ejercicios de limites y funciones final 1
Ejercicios de limites y funciones final 1
 
Derive 6 (integrales)
Derive 6 (integrales)Derive 6 (integrales)
Derive 6 (integrales)
 
Matlab 2 Capitulo 6
Matlab 2 Capitulo 6Matlab 2 Capitulo 6
Matlab 2 Capitulo 6
 
Clase 03-matlab
Clase 03-matlabClase 03-matlab
Clase 03-matlab
 
Deber graficas en matlab
Deber graficas en matlabDeber graficas en matlab
Deber graficas en matlab
 
Funciones de signo
Funciones de signoFunciones de signo
Funciones de signo
 
Curso matlab
Curso matlabCurso matlab
Curso matlab
 
Act 5 parte_A_B_C_D
Act 5 parte_A_B_C_DAct 5 parte_A_B_C_D
Act 5 parte_A_B_C_D
 
Graficas en matlab
Graficas en matlabGraficas en matlab
Graficas en matlab
 

Destacado

¿Qué debemos hacer desde Tecnología para estar alineados con la Transformac...
¿Qué debemos hacer desde Tecnología para estar alineados con la Transformac...¿Qué debemos hacer desde Tecnología para estar alineados con la Transformac...
¿Qué debemos hacer desde Tecnología para estar alineados con la Transformac...Martín Cabrera
 
Transformación digital y el nuevo paradigma de TI
Transformación digital y el nuevo paradigma de TI Transformación digital y el nuevo paradigma de TI
Transformación digital y el nuevo paradigma de TI Software Guru
 
Estadística con Lenguaje R: Sesión Introductoria
Estadística con Lenguaje R: Sesión IntroductoriaEstadística con Lenguaje R: Sesión Introductoria
Estadística con Lenguaje R: Sesión IntroductoriaLuis Fernando Aguas Bucheli
 
LA EMPRESA DEL FUTURO EN LA ERA DIGITAL - INNOVACIÓN Y TRANSFORMACIÓN DIGITAL
LA EMPRESA DEL FUTURO EN LA ERA DIGITAL - INNOVACIÓN Y TRANSFORMACIÓN DIGITALLA EMPRESA DEL FUTURO EN LA ERA DIGITAL - INNOVACIÓN Y TRANSFORMACIÓN DIGITAL
LA EMPRESA DEL FUTURO EN LA ERA DIGITAL - INNOVACIÓN Y TRANSFORMACIÓN DIGITALGuillermo Herrera
 
Estadística con R Commander
Estadística con R CommanderEstadística con R Commander
Estadística con R CommanderFernando Reche
 
Estadisticas Descriptivas e Inferencia utilizando R (Taller Intermedio) UPDATED
Estadisticas Descriptivas e Inferencia utilizando R (Taller Intermedio) UPDATEDEstadisticas Descriptivas e Inferencia utilizando R (Taller Intermedio) UPDATED
Estadisticas Descriptivas e Inferencia utilizando R (Taller Intermedio) UPDATEDDr. Orville M. Disdier
 
Los costos en la industria
Los costos en la industriaLos costos en la industria
Los costos en la industriaJorge Medina
 
Costos industriales
Costos industrialesCostos industriales
Costos industrialesyhameille
 
LENGUAJE DE PROGRAMACION R
LENGUAJE DE PROGRAMACION RLENGUAJE DE PROGRAMACION R
LENGUAJE DE PROGRAMACION RShirley Armas
 
administracion de operaciones
administracion de operacionesadministracion de operaciones
administracion de operacionesgueste3129d
 

Destacado (20)

Transformación digital en cifras
Transformación digital en cifrasTransformación digital en cifras
Transformación digital en cifras
 
Estadística con Lenguaje R: Sesión 7
Estadística con Lenguaje R: Sesión 7Estadística con Lenguaje R: Sesión 7
Estadística con Lenguaje R: Sesión 7
 
Estadística con Lenguaje R: Sesión 1
Estadística con Lenguaje R: Sesión 1Estadística con Lenguaje R: Sesión 1
Estadística con Lenguaje R: Sesión 1
 
Estadística con Lenguaje R: Sesión 5
Estadística con Lenguaje R: Sesión 5Estadística con Lenguaje R: Sesión 5
Estadística con Lenguaje R: Sesión 5
 
Estadística con Lenguaje R: Sesión 4
Estadística con Lenguaje R: Sesión 4Estadística con Lenguaje R: Sesión 4
Estadística con Lenguaje R: Sesión 4
 
Estadística con Lenguaje R: Sesión 8
Estadística con Lenguaje R: Sesión 8Estadística con Lenguaje R: Sesión 8
Estadística con Lenguaje R: Sesión 8
 
¿Qué debemos hacer desde Tecnología para estar alineados con la Transformac...
¿Qué debemos hacer desde Tecnología para estar alineados con la Transformac...¿Qué debemos hacer desde Tecnología para estar alineados con la Transformac...
¿Qué debemos hacer desde Tecnología para estar alineados con la Transformac...
 
Transformación digital y el nuevo paradigma de TI
Transformación digital y el nuevo paradigma de TI Transformación digital y el nuevo paradigma de TI
Transformación digital y el nuevo paradigma de TI
 
Estadística con Lenguaje R: Sesión Introductoria
Estadística con Lenguaje R: Sesión IntroductoriaEstadística con Lenguaje R: Sesión Introductoria
Estadística con Lenguaje R: Sesión Introductoria
 
Estadística con Lenguaje R: Sesión 6
Estadística con Lenguaje R: Sesión 6Estadística con Lenguaje R: Sesión 6
Estadística con Lenguaje R: Sesión 6
 
Introduccion al Programa R
Introduccion al Programa RIntroduccion al Programa R
Introduccion al Programa R
 
LA EMPRESA DEL FUTURO EN LA ERA DIGITAL - INNOVACIÓN Y TRANSFORMACIÓN DIGITAL
LA EMPRESA DEL FUTURO EN LA ERA DIGITAL - INNOVACIÓN Y TRANSFORMACIÓN DIGITALLA EMPRESA DEL FUTURO EN LA ERA DIGITAL - INNOVACIÓN Y TRANSFORMACIÓN DIGITAL
LA EMPRESA DEL FUTURO EN LA ERA DIGITAL - INNOVACIÓN Y TRANSFORMACIÓN DIGITAL
 
Estadística con R Commander
Estadística con R CommanderEstadística con R Commander
Estadística con R Commander
 
Estadisticas Descriptivas e Inferencia utilizando R (Taller Intermedio) UPDATED
Estadisticas Descriptivas e Inferencia utilizando R (Taller Intermedio) UPDATEDEstadisticas Descriptivas e Inferencia utilizando R (Taller Intermedio) UPDATED
Estadisticas Descriptivas e Inferencia utilizando R (Taller Intermedio) UPDATED
 
R- Introduction
R- IntroductionR- Introduction
R- Introduction
 
Los costos en la industria
Los costos en la industriaLos costos en la industria
Los costos en la industria
 
Costos industriales
Costos industrialesCostos industriales
Costos industriales
 
LENGUAJE DE PROGRAMACION R
LENGUAJE DE PROGRAMACION RLENGUAJE DE PROGRAMACION R
LENGUAJE DE PROGRAMACION R
 
administracion de operaciones
administracion de operacionesadministracion de operaciones
administracion de operaciones
 
Costos industriales
Costos industrialesCostos industriales
Costos industriales
 

Similar a Estadística con Lenguaje R: Sesión 3

Similar a Estadística con Lenguaje R: Sesión 3 (20)

Array bidimensional
Array bidimensionalArray bidimensional
Array bidimensional
 
Arrays bidimensionales
Arrays bidimensionalesArrays bidimensionales
Arrays bidimensionales
 
Una de las variables en programación que pocas veces se utilizan por desconoc...
Una de las variables en programación que pocas veces se utilizan por desconoc...Una de las variables en programación que pocas veces se utilizan por desconoc...
Una de las variables en programación que pocas veces se utilizan por desconoc...
 
Estrctura de Datos
Estrctura de DatosEstrctura de Datos
Estrctura de Datos
 
Matrices y sistemas de ecuaciones
Matrices y sistemas de ecuacionesMatrices y sistemas de ecuaciones
Matrices y sistemas de ecuaciones
 
Trabajo de computacion .pptx
Trabajo de computacion .pptxTrabajo de computacion .pptx
Trabajo de computacion .pptx
 
Matlab -compu_aplicada
Matlab  -compu_aplicadaMatlab  -compu_aplicada
Matlab -compu_aplicada
 
Determinantes
DeterminantesDeterminantes
Determinantes
 
trabajo de computacion .pptx
trabajo de computacion .pptxtrabajo de computacion .pptx
trabajo de computacion .pptx
 
Comandos r
Comandos rComandos r
Comandos r
 
1 matrices
1 matrices1 matrices
1 matrices
 
Computacion
ComputacionComputacion
Computacion
 
2 vectores matrices
2 vectores matrices2 vectores matrices
2 vectores matrices
 
2 vectores matrices
2 vectores matrices2 vectores matrices
2 vectores matrices
 
06 - Arrays y matrices en lenguaje C
06 - Arrays y matrices en lenguaje C06 - Arrays y matrices en lenguaje C
06 - Arrays y matrices en lenguaje C
 
Matlab
MatlabMatlab
Matlab
 
Practica2
Practica2Practica2
Practica2
 
Int_Octave_II_2021.pptx
Int_Octave_II_2021.pptxInt_Octave_II_2021.pptx
Int_Octave_II_2021.pptx
 
Arrays Bidimensionales y Multidimensionales - Carlos Correa
Arrays Bidimensionales y Multidimensionales - Carlos CorreaArrays Bidimensionales y Multidimensionales - Carlos Correa
Arrays Bidimensionales y Multidimensionales - Carlos Correa
 
Investigación #1
Investigación #1Investigación #1
Investigación #1
 

Más de Luis Fernando Aguas Bucheli (20)

EFC-ISW-Luis Fernando Aguas.pptx
EFC-ISW-Luis Fernando Aguas.pptxEFC-ISW-Luis Fernando Aguas.pptx
EFC-ISW-Luis Fernando Aguas.pptx
 
P-S2.pptx
P-S2.pptxP-S2.pptx
P-S2.pptx
 
EBTS-S1.pptx
EBTS-S1.pptxEBTS-S1.pptx
EBTS-S1.pptx
 
P-S3.pptx
P-S3.pptxP-S3.pptx
P-S3.pptx
 
EBTS-S4.pptx
EBTS-S4.pptxEBTS-S4.pptx
EBTS-S4.pptx
 
P-S4.pptx
P-S4.pptxP-S4.pptx
P-S4.pptx
 
P-S1.pptx
P-S1.pptxP-S1.pptx
P-S1.pptx
 
EBTS-S3.pptx
EBTS-S3.pptxEBTS-S3.pptx
EBTS-S3.pptx
 
EBTS-S2.pptx
EBTS-S2.pptxEBTS-S2.pptx
EBTS-S2.pptx
 
PDIDTI-S7.pptx
PDIDTI-S7.pptxPDIDTI-S7.pptx
PDIDTI-S7.pptx
 
PDIDTI-S4.pptx
PDIDTI-S4.pptxPDIDTI-S4.pptx
PDIDTI-S4.pptx
 
PDIDTI-S2.pptx
PDIDTI-S2.pptxPDIDTI-S2.pptx
PDIDTI-S2.pptx
 
PDIDTI-S1.pptx
PDIDTI-S1.pptxPDIDTI-S1.pptx
PDIDTI-S1.pptx
 
PDIDTI-S8.pptx
PDIDTI-S8.pptxPDIDTI-S8.pptx
PDIDTI-S8.pptx
 
PDIDTI-S6.pptx
PDIDTI-S6.pptxPDIDTI-S6.pptx
PDIDTI-S6.pptx
 
PDIDTI-S5.pptx
PDIDTI-S5.pptxPDIDTI-S5.pptx
PDIDTI-S5.pptx
 
PDIDTI-S3.pptx
PDIDTI-S3.pptxPDIDTI-S3.pptx
PDIDTI-S3.pptx
 
TIC-S4.pptx
TIC-S4.pptxTIC-S4.pptx
TIC-S4.pptx
 
TIC-S3.pptx
TIC-S3.pptxTIC-S3.pptx
TIC-S3.pptx
 
TIC-S2.pptx
TIC-S2.pptxTIC-S2.pptx
TIC-S2.pptx
 

Último

FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAEl Fortí
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Juan Martín Martín
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfFrancisco158360
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxFernando Solis
 
PIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonablesPIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonablesYanirisBarcelDelaHoz
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaDecaunlz
 
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Katherine Concepcion Gonzalez
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfMercedes Gonzalez
 
Infografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdfInfografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdfAlfaresbilingual
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfAngélica Soledad Vega Ramírez
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dstEphaniiie
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónLourdes Feria
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxiemerc2024
 
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdfMiNeyi1
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptxRigoTito
 

Último (20)

FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 
PIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonablesPIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonables
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativa
 
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
 
Infografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdfInfografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdf
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes d
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcción
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
 
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
 
Tema 11. Dinámica de la hidrosfera 2024
Tema 11.  Dinámica de la hidrosfera 2024Tema 11.  Dinámica de la hidrosfera 2024
Tema 11. Dinámica de la hidrosfera 2024
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
 

Estadística con Lenguaje R: Sesión 3

  • 1. Lenguaje R: Sesión 3 ING. LUIS FERNANDO AGUAS B
  • 2. 2Sesión 3 – Arrays y matrices Arrays. Un array es un conjunto de datos de k dimensiones. El caso más sencillo se da con k=2, lo que llamaremos matriz (matrix). Todos los elementos de un array han de ser del mismo tipo. En R cualquier array ha de tener asociado un atributo llamado dim que indique los límites superiores de cada una de las dimensiones. Por definición el límite inferior es 1. > a <- 1:42 # Creamos un vector de 42 posiciones # Lo transformamos en un array añadiéndole el límite superior de cada dimensión. En este caso en un array de # tres dimensiones de longitudes 3, 7 y 2. Nótese que las dimensiones que se “mueven” más rápido son las de # más a la izquierda. > dim(a) <- c(3,7,2) > a , , 1 [,1] [,2] [,3] [,4] [,5] [,6] [,7] [1,] 1 4 7 10 13 16 19 [2,] 2 5 8 11 14 17 20 [3,] 3 6 9 12 15 18 21 , , 2 [,1] [,2] [,3] [,4] [,5] [,6] [,7] [1,] 22 25 28 31 34 37 40 [2,] 23 26 29 32 35 38 41 [3,] 24 27 30 33 36 39 42
  • 3. 3Sesión 3 – Arrays y matrices Indexación de arrays (1). Los arrays se indexan exactamente igual que los vectores. En este caso tenemos que establecer un vector de índices (sesión 2) para cada dimensión del array. Los diferentes vectores se pondrán separados por comas y toda la indexación también irá entre corchetes ([]). Si sobre una determinada dimensión no queremos aplicar ningún tipo de selección simplemente dejaremos el espacio correspondiente a esa dimensión en blanco. # Del array anterior seleccionamos la posición 1, 4, 2 > a[1,4,2] [1] 31 # Ahora fijamos las dos primeras dimensiones y dejamos libre la tercera > a[2,4,] [1] 11 32 # a[,2,] es un array con vector de dimensiones c(3,2) y vector de datos que contiene los valores # c(a[1,2,1], a[2,2,1], a[3,2,1], a[1,2,2], a[2,2,2], a[3,2,2]) > a[,2,] [,1] [,2] [1,] 4 25 [2,] 5 26 [3,] 6 27
  • 4. Un array también se puede indexar con un único array de índices. Dicho array tendrá tantas columnas como dimensiones tenga el array de donde se quieren subseleccionar los elementos y un números de filas indeterminado, que equivaldrá al número de elementos que queramos seleccionar. En el caso de las matrices el proceso se hace más claro. # Generamos una matriz 4 * 5 > x <- 1:20 > dim(x) <- c(4,5) > x [,1] [,2] [,3] [,4] [,5] [1,] 1 5 9 13 17 [2,] 2 6 10 14 18 [3,] 3 7 11 15 19 [4,] 4 8 12 16 20 # Ahora queremos seleccionar los elementos x[1,3], x[2,2] y x[3,1]. Para eso crearemos el array de índices, # que en este caso tendrá dos columnas y tres filas. > i <- c(1,2,3,3,2,1) #Vector de valores > dim(i) <- c(3,2) #Vector de dimensiones > i [,1] [,2] [1,] 1 3 [2,] 2 2 [3,] 3 1 4Sesión 3 – Arrays y matrices Indexación de arrays (2).
  • 5. 5Sesión 3 – Arrays y matrices Indexación de arrays (3) # Vemos los elementos seleccionados > x[i] [1] 9 6 3 # Ponemos esos elementos a cero > x[i] <- 0 > x [,1] [,2] [,3] [,4] [,5] [1,] 1 5 0 13 17 [2,] 2 0 10 14 18 [3,] 0 7 11 15 19 [4,] 4 8 12 16 20 Además de con un vector de datos y un atributo dim, los arrays también pueden ser construídos con la función array, a la cual se le ha de pasar como argumentos el vector de valores y el vector de dimensiones. Esta función actúa igual que el método “manual”, pero acepta vectores de dimensiones que no encajen exactamente con el tamaño del vector de datos (reciclaje). > Z1 <- array(x,dim=c(4,5)) # Creamos el mismo array que antes > Z2 <- array(x,dim=c(5,5)) # Los valores del vector de datos se reciclan > Z3 <- array(x,dim=c(4,4)) # Hay valores del vector de datos que no se incluyen en el nuevo array La función array
  • 6. 6Sesión 3 – Arrays y matrices Facilidades con matrices (1) Las matrices son una particularización de los arrays, donde el número de dimensiones es 2. Debido a su gran uso, R dispone de funciones espécificas para matrices. Al igual que la función array, la función matrix nos permite crear matrices. # Creamos una matriz de dimensiones 5 * 4 con la función matrix. # Si queremos que la llene por filas le añadiremos el parámetro # byrow=TRUE. > a <- matrix(1:20,5,4) > a [,1] [,2] [,3] [,4] [1,] 1 6 11 16 [2,] 2 7 12 17 [3,] 3 8 13 18 [4,] 4 9 14 19 [5,] 5 10 15 20 # Miramos las dimensiones. También lo podemos hacer con la función dim. > nrow(a) [1] 5 > ncol(a) [1] 4 Función número filas número columnas producto matricial transposición diagonal Operador nrow ncol %*% t diag
  • 7. 7Sesión 3 – Arrays y matrices Facilidades con matrices (2) R permite utilizar los operadores matemáticos clásicos (+, - , *, /,...) para operaciones con matrices de mismas dimensiones. En este caso se realiza la operación para cada par de elementos # Creamos dos matrices de iguales dimensiones > a <- matrix(1:20,5,4) > b <- matrix(21:40,5,4,byrow=TRUE) # Ahora podemos hacer operaciones con las dos matrices > a + b #Suma posición a posición. [,1] [,2] [,3] [,4] [1,] 22 28 34 40 [2,] 27 33 39 45 [3,] 32 38 44 50 [4,] 37 43 49 55 [5,] 42 48 54 60 Las matrices también se pueden construir a base de la unión de vectores individuales, ya sea apilándolos por filas o por columnas. Para eso tenemos las funciones rbind y cbind. Para transformar un array en vector utilizaremos la función as.vector > rbind(1:5,11:15,21:25) #Apilamos tres vectores por filas. El resultado es un objeto de tipo matrix. [,1] [,2] [,3] [,4] [,5] [1,] 1 2 3 4 5 [2,] 11 12 13 14 15 [3,] 21 22 23 24 25