SlideShare une entreprise Scribd logo
1  sur  7
Lenguaje R: Sesión 4
ING. LUIS FERNANDO AGUAS B
2Sesión 4 – Listas y data frames
Listas (1)
Una lista es un objeto que consiste en una colección ordenada de objetos, llamados
componentes. Estos componentes no tienen que ser necesariamente del mismo
tipo o mode, y pueden ser vectores, arrays o nuevas listas. Las listas se construyen
con la función list.
# Creamos una lista
> lst <- list(padre="Carlos", madre="María", num.hijos=3, edad.hijos=c(4,7,9))
> lst
$padre
[1] "Carlos"
$madre
[1] "María"
$num.hijos
[1] 3
$edad.hijos
[1] 4 7 9
# Los elementos de una lista siempre estan siempre numerados, y pueden ser accedidos mediante esos
# números. En este caso los elementos de la lista se indexan mediante dobles claudators ([[]]). Si lst[[4]] es
# un vector, entonces lst[[4]][1] es su primer elemento.
> lst[[1]]
[1] "Carlos"
> lst[[3]]
[1] 3
> lst[[4]][1]
[1] 4
3Sesión 4 – Listas y data frames
Listas (2)
La función length, aplicada a una lista, devuelve el número de componentes "de
primer nivel" que contiene.
> length(lst)
[1] 4
Los componentes de las listas también pueden tener nombres. En este caso,
también nos podremos referir a ellos por su nombre además por su posición,
ayudados del símbolo del dólar ($). Esto es útil para no tener que recordar en qué
posición está cada componente de la lista.
> lst$madre #Equivalente a lst[[2]]
[1] "María"
# Otra manera de hacerlo
> x <- "madre"
> lst[[x]] #Equivalente a lst[["madre"]]
[1] "María"
> lst$edad.hijos[2] #Equivalente a lst[[4]][2]
[1] 7
# Hay que distinguir entre lst[1] y lst[[1]]. El primer comando devuelve una sublista. Mientras que el segundo
# devuelve el primer componente de la lista.
> lst[1] #Si la lista tiene nombres, éstos se transfieren a la sublista.
$padre
[1] "Carlos"
> lst[[1]] #Se devuelve el primer elemento de la lista respetando su tipo.
[1] "Carlos"
4Sesión 4 – Listas y data frames
Listas (3)
Los nombres de las listas se pueden añadir con posterioridad a la creación de la
lista.
# Creamos la lista sin nombres
> lst <- list("Carlos", "María", 3, c(4,7,9))
# Le añadimos los nombres
> names(lst) <- c("padre","madre","num.hijos","edad.hijos")
# Podemos extender la lista de manera sencilla
> lst[5] <- c("Juan", "Pedro", "Ana")
# Le ponemos el nombre al nuevo elemento de la lista
> names(lst)[5] <- "nombre.hijos"
# Otra manera alternativa de hacerlo
> lst$nombre.hijos <- c("Juan", "Pedro", "Ana")
Para concatenar listas utilizaremos la función c, de la manera c(lista1, lista2, …,
lista n).
Cuando nos referimos a los elementos de las listas por sus nombres podemos
utilizar el número mínimo de letras que indentifique de manera única a los
diferentes componentes. De esta manera, lst$padre podría ser especificado como
lst$p.
5Sesión 4 – Listas y data frames
Data frames
Un data frame es una lista de variables que tienen la misma longitud y que han de
estar identificadas por un nombre único. Se crean mediante la función data.frame.
# Creamos el data frame
> df <- data.frame(Nombre=c("Pedro","María","José","Marta"),
Edad=c(27,34,40,39),
Poblacion=c("Zaragoza","Madrid","Valencia","Barcelona"),
Sexo=c("H","M","H","M"),
Casado=c(F,T,T,F))
> df #Para acceder a una variable en concreto lo haremos con el dólar ($), como en el caso de las listas.
Nombre Edad Poblacion Sexo Casado
1 Pedro 27 Zaragoza H FALSE
2 María 34 Madrid M TRUE
3 José 40 Valencia H TRUE
4 Marta 39 Barcelona M FALSE
En este caso todas las columnas del data frame han de tener 4 elementos o un
número múltiplo de 4. Aplicando el reciclaje, R extiende las columnas más cortas
para igualarlas en longitud respecto a la más larga.
Las matrices y las listas también pueden ser transformadas a data.frames. En este
caso cada columna de la matriz o elemento de la lista pasan a ser una columna del
nuevo data frame.
Los data frames se extienden igual que las listas (df$nueva.col <- valores)
6Sesión 4 – Listas y data frames
Trabajando con data frames: attach y detach
A veces puede ser engorroso trabajar con data frames, debido a que para acceder
a las variables hemos de escribir el nombre del data frame seguido de un dólar y
del nombre de la variable. R nos permite hacer visible el contenido de un data
frame o de una lista, de manera que no hemos de escribir su nombre cada vez que
queremos acceder a una de sus variables. Esto lo hacemos con la instrucción
attach. Para volver a hacer "invisible" el data frame utilizaremos detach.
# Hacemos el attach del data frame
> attach(df)
# Vemos que el data frame ya está cargado en nuestro entorno.
> search()
[1] ".GlobalEnv" "df" "package:methods" "package:stats" "package:graphics" "package:utils"
[7] "Autoloads" "package:base"
> ls(2)
[1] "Casado" "Edad" "Nombre" "Poblacion" "Sexo"
# Accedemos directamente a las variables del data frame
> Nombre #En este caso la variable ha sido transformada a factor
[1] Pedro María José Marta
Levels: José María Marta Pedro
# Dejamos de hacer "visible" el data frame con la instrucción detach.
> detach(df)
> search()
[1] ".GlobalEnv" "package:methods" "package:stats" "package:graphics" "package:utils" "Autoloads"
[7] "package:base"
7Sesión 4 – Listas y data frames
Factores
R dispone de un tipo especial de datos llamado factor. Los vectores de factores
sirven principalmente para agrupar elementos de otros vectores de la misma
longitud. Los factores se utilizan principalmente en fórmulas para realizar modelos.
> df$Sexo
[1] H M H M
Levels: H M
Los levels contienen las distintas etiquetas. A cada etiqueta diferente R le asigna un
número identificador por órden alfabético. De esta manera, podríamos redefinir los
factores como etiquetas de texto que tienen asociado un código interno.
# Para ver los levels de una variable factor utilizaremos la instrucción levels.
> levels(df$Sexo)
[1] "H" "M"
# Si queremos reordenarlos utilizaremos la instrucción relevel
> relevel(df$Sexo,2) #Le decimos que el 2º factor pase a la 1ª posición.
[1] H M H M
Levels: M H
# Para crear una variable factor, R dispone de la instrucción factor, a la que se le suele pasar un vector de
# caracteres
> a <- factor(c("a","b","c","b","a"))
> a
[1] a b c b a
Levels: a b c

Contenu connexe

En vedette

Introducción a R para el análisis estadístico de datos | Distribuciones de pr...
Introducción a R para el análisis estadístico de datos | Distribuciones de pr...Introducción a R para el análisis estadístico de datos | Distribuciones de pr...
Introducción a R para el análisis estadístico de datos | Distribuciones de pr...Maria Paula Dieser
 
¿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
 
Procesamiento, tratamiento y presentación estadistica de datos
Procesamiento, tratamiento y presentación estadistica de datosProcesamiento, tratamiento y presentación estadistica de datos
Procesamiento, tratamiento y presentación estadistica de datosJOSE DANIEL URVIOLA CORZO
 
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
 

En vedette (20)

Introducción a R para el análisis estadístico de datos | Distribuciones de pr...
Introducción a R para el análisis estadístico de datos | Distribuciones de pr...Introducción a R para el análisis estadístico de datos | Distribuciones de pr...
Introducción a R para el análisis estadístico de datos | Distribuciones de pr...
 
Estadística con Lenguaje R: Sesión 2
Estadística con Lenguaje R: Sesión 2Estadística con Lenguaje R: Sesión 2
Estadística con Lenguaje R: Sesión 2
 
Estadística con Lenguaje R: Sesión 3
Estadística con Lenguaje R: Sesión 3Estadística con Lenguaje R: Sesión 3
Estadística con Lenguaje R: Sesión 3
 
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
 
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 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 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
 
Procesamiento, tratamiento y presentación estadistica de datos
Procesamiento, tratamiento y presentación estadistica de datosProcesamiento, tratamiento y presentación estadistica de datos
Procesamiento, tratamiento y presentación estadistica de datos
 
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
 
R- Introduction
R- IntroductionR- Introduction
R- Introduction
 
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
 
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
 

Similaire à Estadística con Lenguaje R: Sesión 4

Temas programacion java_2
Temas programacion java_2Temas programacion java_2
Temas programacion java_2Wally IG
 
Sesión 12 -Diseño de BD_Ciclo_3.pptx
Sesión 12 -Diseño de BD_Ciclo_3.pptxSesión 12 -Diseño de BD_Ciclo_3.pptx
Sesión 12 -Diseño de BD_Ciclo_3.pptxJohn McClane
 
jhon anton 31.184.245 (declaraciones Listas).pdf
jhon anton 31.184.245 (declaraciones Listas).pdfjhon anton 31.184.245 (declaraciones Listas).pdf
jhon anton 31.184.245 (declaraciones Listas).pdfjhonanton789
 
DECLARACION DE LISTAS 1.pdf
DECLARACION DE LISTAS 1.pdfDECLARACION DE LISTAS 1.pdf
DECLARACION DE LISTAS 1.pdfmichaelsilva2k20
 
Estructura de datos manipulación de listas y tablas
Estructura de datos manipulación de listas y tablas Estructura de datos manipulación de listas y tablas
Estructura de datos manipulación de listas y tablas Pamelaguibkdoe
 
Taller listasyeasygui
Taller listasyeasyguiTaller listasyeasygui
Taller listasyeasyguiAlbert Page
 
Estructura de datos manipulación de listas y tablas funda
Estructura de datos manipulación de listas y tablas fundaEstructura de datos manipulación de listas y tablas funda
Estructura de datos manipulación de listas y tablas fundaDiego Rivas
 
Informe de Lista.pdf
Informe de Lista.pdfInforme de Lista.pdf
Informe de Lista.pdfdciutsucre
 
Scala collections
Scala collectionsScala collections
Scala collectionscrissbal94
 
LISTAS EN PROGRAMACION.pdf
LISTAS EN PROGRAMACION.pdfLISTAS EN PROGRAMACION.pdf
LISTAS EN PROGRAMACION.pdfGabriel Mendez
 
Estructura de datos manipulación de listas y tablas
Estructura de datos manipulación de listas y tablas Estructura de datos manipulación de listas y tablas
Estructura de datos manipulación de listas y tablas David Yupanqui
 

Similaire à Estadística con Lenguaje R: Sesión 4 (20)

Listas
ListasListas
Listas
 
Python04
Python04Python04
Python04
 
Ejercicios con Python parte 05
Ejercicios con Python parte 05Ejercicios con Python parte 05
Ejercicios con Python parte 05
 
Perl2 arrays
Perl2 arraysPerl2 arrays
Perl2 arrays
 
Listas
ListasListas
Listas
 
Python Pilas y Colas
Python Pilas y ColasPython Pilas y Colas
Python Pilas y Colas
 
Temas programacion java_2
Temas programacion java_2Temas programacion java_2
Temas programacion java_2
 
Sesión 12 -Diseño de BD_Ciclo_3.pptx
Sesión 12 -Diseño de BD_Ciclo_3.pptxSesión 12 -Diseño de BD_Ciclo_3.pptx
Sesión 12 -Diseño de BD_Ciclo_3.pptx
 
jhon anton 31.184.245 (declaraciones Listas).pdf
jhon anton 31.184.245 (declaraciones Listas).pdfjhon anton 31.184.245 (declaraciones Listas).pdf
jhon anton 31.184.245 (declaraciones Listas).pdf
 
Apuntes Ped
Apuntes PedApuntes Ped
Apuntes Ped
 
DECLARACION DE LISTAS 1.pdf
DECLARACION DE LISTAS 1.pdfDECLARACION DE LISTAS 1.pdf
DECLARACION DE LISTAS 1.pdf
 
Estructura de datos manipulación de listas y tablas
Estructura de datos manipulación de listas y tablas Estructura de datos manipulación de listas y tablas
Estructura de datos manipulación de listas y tablas
 
Taller listasyeasygui
Taller listasyeasyguiTaller listasyeasygui
Taller listasyeasygui
 
Grupo
GrupoGrupo
Grupo
 
Estructura de datos manipulación de listas y tablas funda
Estructura de datos manipulación de listas y tablas fundaEstructura de datos manipulación de listas y tablas funda
Estructura de datos manipulación de listas y tablas funda
 
Teoría de árboles
Teoría de árbolesTeoría de árboles
Teoría de árboles
 
Informe de Lista.pdf
Informe de Lista.pdfInforme de Lista.pdf
Informe de Lista.pdf
 
Scala collections
Scala collectionsScala collections
Scala collections
 
LISTAS EN PROGRAMACION.pdf
LISTAS EN PROGRAMACION.pdfLISTAS EN PROGRAMACION.pdf
LISTAS EN PROGRAMACION.pdf
 
Estructura de datos manipulación de listas y tablas
Estructura de datos manipulación de listas y tablas Estructura de datos manipulación de listas y tablas
Estructura de datos manipulación de listas y tablas
 

Plus 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
 

Dernier

AEC2. Egipto Antiguo. Adivina, Adivinanza.pptx
AEC2. Egipto Antiguo. Adivina, Adivinanza.pptxAEC2. Egipto Antiguo. Adivina, Adivinanza.pptx
AEC2. Egipto Antiguo. Adivina, Adivinanza.pptxhenarfdez
 
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...JAVIER SOLIS NOYOLA
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesMarisolMartinez707897
 
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
 
Código Civil de la República Bolivariana de Venezuela
Código Civil de la República Bolivariana de VenezuelaCódigo Civil de la República Bolivariana de Venezuela
Código Civil de la República Bolivariana de Venezuelabeltranponce75
 
Ensayo Paes competencia matematicas 2 Preuniversitario
Ensayo Paes competencia matematicas 2 PreuniversitarioEnsayo Paes competencia matematicas 2 Preuniversitario
Ensayo Paes competencia matematicas 2 Preuniversitariolucianosaldivia3
 
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIASISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIAFabiolaGarcia751855
 
UNIDAD DIDACTICA nivel inicial EL SUPERMERCADO.docx
UNIDAD DIDACTICA nivel inicial EL SUPERMERCADO.docxUNIDAD DIDACTICA nivel inicial EL SUPERMERCADO.docx
UNIDAD DIDACTICA nivel inicial EL SUPERMERCADO.docxMaria Jimena Leon Malharro
 
Desarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por ValoresDesarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por ValoresJonathanCovena1
 
Factores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfFactores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfJonathanCovena1
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docxEliaHernndez7
 
AEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptxAEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptxhenarfdez
 
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdfPlan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdfcarolinamartinezsev
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOluismii249
 
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
 
prostitución en España: una mirada integral!
prostitución en España: una mirada integral!prostitución en España: una mirada integral!
prostitución en España: una mirada integral!CatalinaAlfaroChryso
 
activ4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfactiv4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfRosabel UA
 

Dernier (20)

Power Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptxPower Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptx
 
AEC2. Egipto Antiguo. Adivina, Adivinanza.pptx
AEC2. Egipto Antiguo. Adivina, Adivinanza.pptxAEC2. Egipto Antiguo. Adivina, Adivinanza.pptx
AEC2. Egipto Antiguo. Adivina, Adivinanza.pptx
 
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtuales
 
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
 
Código Civil de la República Bolivariana de Venezuela
Código Civil de la República Bolivariana de VenezuelaCódigo Civil de la República Bolivariana de Venezuela
Código Civil de la República Bolivariana de Venezuela
 
Ensayo Paes competencia matematicas 2 Preuniversitario
Ensayo Paes competencia matematicas 2 PreuniversitarioEnsayo Paes competencia matematicas 2 Preuniversitario
Ensayo Paes competencia matematicas 2 Preuniversitario
 
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIASISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
 
UNIDAD DIDACTICA nivel inicial EL SUPERMERCADO.docx
UNIDAD DIDACTICA nivel inicial EL SUPERMERCADO.docxUNIDAD DIDACTICA nivel inicial EL SUPERMERCADO.docx
UNIDAD DIDACTICA nivel inicial EL SUPERMERCADO.docx
 
Desarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por ValoresDesarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por Valores
 
Factores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfFactores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdf
 
Sesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdfSesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdf
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
AEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptxAEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptx
 
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdfPlan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
 
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...
 
prostitución en España: una mirada integral!
prostitución en España: una mirada integral!prostitución en España: una mirada integral!
prostitución en España: una mirada integral!
 
activ4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfactiv4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdf
 
Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024
 

Estadística con Lenguaje R: Sesión 4

  • 1. Lenguaje R: Sesión 4 ING. LUIS FERNANDO AGUAS B
  • 2. 2Sesión 4 – Listas y data frames Listas (1) Una lista es un objeto que consiste en una colección ordenada de objetos, llamados componentes. Estos componentes no tienen que ser necesariamente del mismo tipo o mode, y pueden ser vectores, arrays o nuevas listas. Las listas se construyen con la función list. # Creamos una lista > lst <- list(padre="Carlos", madre="María", num.hijos=3, edad.hijos=c(4,7,9)) > lst $padre [1] "Carlos" $madre [1] "María" $num.hijos [1] 3 $edad.hijos [1] 4 7 9 # Los elementos de una lista siempre estan siempre numerados, y pueden ser accedidos mediante esos # números. En este caso los elementos de la lista se indexan mediante dobles claudators ([[]]). Si lst[[4]] es # un vector, entonces lst[[4]][1] es su primer elemento. > lst[[1]] [1] "Carlos" > lst[[3]] [1] 3 > lst[[4]][1] [1] 4
  • 3. 3Sesión 4 – Listas y data frames Listas (2) La función length, aplicada a una lista, devuelve el número de componentes "de primer nivel" que contiene. > length(lst) [1] 4 Los componentes de las listas también pueden tener nombres. En este caso, también nos podremos referir a ellos por su nombre además por su posición, ayudados del símbolo del dólar ($). Esto es útil para no tener que recordar en qué posición está cada componente de la lista. > lst$madre #Equivalente a lst[[2]] [1] "María" # Otra manera de hacerlo > x <- "madre" > lst[[x]] #Equivalente a lst[["madre"]] [1] "María" > lst$edad.hijos[2] #Equivalente a lst[[4]][2] [1] 7 # Hay que distinguir entre lst[1] y lst[[1]]. El primer comando devuelve una sublista. Mientras que el segundo # devuelve el primer componente de la lista. > lst[1] #Si la lista tiene nombres, éstos se transfieren a la sublista. $padre [1] "Carlos" > lst[[1]] #Se devuelve el primer elemento de la lista respetando su tipo. [1] "Carlos"
  • 4. 4Sesión 4 – Listas y data frames Listas (3) Los nombres de las listas se pueden añadir con posterioridad a la creación de la lista. # Creamos la lista sin nombres > lst <- list("Carlos", "María", 3, c(4,7,9)) # Le añadimos los nombres > names(lst) <- c("padre","madre","num.hijos","edad.hijos") # Podemos extender la lista de manera sencilla > lst[5] <- c("Juan", "Pedro", "Ana") # Le ponemos el nombre al nuevo elemento de la lista > names(lst)[5] <- "nombre.hijos" # Otra manera alternativa de hacerlo > lst$nombre.hijos <- c("Juan", "Pedro", "Ana") Para concatenar listas utilizaremos la función c, de la manera c(lista1, lista2, …, lista n). Cuando nos referimos a los elementos de las listas por sus nombres podemos utilizar el número mínimo de letras que indentifique de manera única a los diferentes componentes. De esta manera, lst$padre podría ser especificado como lst$p.
  • 5. 5Sesión 4 – Listas y data frames Data frames Un data frame es una lista de variables que tienen la misma longitud y que han de estar identificadas por un nombre único. Se crean mediante la función data.frame. # Creamos el data frame > df <- data.frame(Nombre=c("Pedro","María","José","Marta"), Edad=c(27,34,40,39), Poblacion=c("Zaragoza","Madrid","Valencia","Barcelona"), Sexo=c("H","M","H","M"), Casado=c(F,T,T,F)) > df #Para acceder a una variable en concreto lo haremos con el dólar ($), como en el caso de las listas. Nombre Edad Poblacion Sexo Casado 1 Pedro 27 Zaragoza H FALSE 2 María 34 Madrid M TRUE 3 José 40 Valencia H TRUE 4 Marta 39 Barcelona M FALSE En este caso todas las columnas del data frame han de tener 4 elementos o un número múltiplo de 4. Aplicando el reciclaje, R extiende las columnas más cortas para igualarlas en longitud respecto a la más larga. Las matrices y las listas también pueden ser transformadas a data.frames. En este caso cada columna de la matriz o elemento de la lista pasan a ser una columna del nuevo data frame. Los data frames se extienden igual que las listas (df$nueva.col <- valores)
  • 6. 6Sesión 4 – Listas y data frames Trabajando con data frames: attach y detach A veces puede ser engorroso trabajar con data frames, debido a que para acceder a las variables hemos de escribir el nombre del data frame seguido de un dólar y del nombre de la variable. R nos permite hacer visible el contenido de un data frame o de una lista, de manera que no hemos de escribir su nombre cada vez que queremos acceder a una de sus variables. Esto lo hacemos con la instrucción attach. Para volver a hacer "invisible" el data frame utilizaremos detach. # Hacemos el attach del data frame > attach(df) # Vemos que el data frame ya está cargado en nuestro entorno. > search() [1] ".GlobalEnv" "df" "package:methods" "package:stats" "package:graphics" "package:utils" [7] "Autoloads" "package:base" > ls(2) [1] "Casado" "Edad" "Nombre" "Poblacion" "Sexo" # Accedemos directamente a las variables del data frame > Nombre #En este caso la variable ha sido transformada a factor [1] Pedro María José Marta Levels: José María Marta Pedro # Dejamos de hacer "visible" el data frame con la instrucción detach. > detach(df) > search() [1] ".GlobalEnv" "package:methods" "package:stats" "package:graphics" "package:utils" "Autoloads" [7] "package:base"
  • 7. 7Sesión 4 – Listas y data frames Factores R dispone de un tipo especial de datos llamado factor. Los vectores de factores sirven principalmente para agrupar elementos de otros vectores de la misma longitud. Los factores se utilizan principalmente en fórmulas para realizar modelos. > df$Sexo [1] H M H M Levels: H M Los levels contienen las distintas etiquetas. A cada etiqueta diferente R le asigna un número identificador por órden alfabético. De esta manera, podríamos redefinir los factores como etiquetas de texto que tienen asociado un código interno. # Para ver los levels de una variable factor utilizaremos la instrucción levels. > levels(df$Sexo) [1] "H" "M" # Si queremos reordenarlos utilizaremos la instrucción relevel > relevel(df$Sexo,2) #Le decimos que el 2º factor pase a la 1ª posición. [1] H M H M Levels: M H # Para crear una variable factor, R dispone de la instrucción factor, a la que se le suele pasar un vector de # caracteres > a <- factor(c("a","b","c","b","a")) > a [1] a b c b a Levels: a b c