Ejercicio 1
- Crea una lista llamada acciones que contenga la siguiente
información en vectores: apple : 120, 125, 130; google: 1800, 1850, 1900
y amazon = 3200, 3300, 3400. Estos vectores representan los precios de
cierre de las acciones de estas empresas en tres días consecutivos.
Asigna nombres a los elementos de la lista según el nombre de la
empresa.
apple_acciones <- c(120,125,130)
google_acciones <- c(1800, 1850, 1900)
amazon_acciones <- c(3200, 3300, 3400)
# lista
acciones <- list(appel=apple_acciones,google=google_acciones,amazon=amazon_acciones)
print(acciones)
## $appel
## [1] 120 125 130
##
## $google
## [1] 1800 1850 1900
##
## $amazon
## [1] 3200 3300 3400
- Añade un nuevo elemento a la lista acciones que sea un vector con
los precios de cierre de las acciones de Microsoft en los mismos tres
días: Microsoft: 210, 215, 220.
microsoft_acciones <- c(210, 215, 220)
acciones <- list(acciones, microsoft=microsoft_acciones)
print(acciones)
## [[1]]
## [[1]]$appel
## [1] 120 125 130
##
## [[1]]$google
## [1] 1800 1850 1900
##
## [[1]]$amazon
## [1] 3200 3300 3400
##
##
## $microsoft
## [1] 210 215 220
- Extrae el segundo elemento del vector google que está dentro de la
lista acciones
## [1] 1850
Ejercicio 2
- Crea una nueva lista llamada indicadores que contenga los siguientes
objetos: pib = 30000, inflacion = c(2.5, 3.0, 3.5), desempleo =
matrix(c(5.0, 5.5, 6.0, 4.5, 4.0, 3.5), nrow = 2) y deuda= list(publica
= 60, privada = 40). Estos objetos representan el producto interno bruto
(PIB), la inflación, el desempleo y la deuda de un país en millones de
dólares. Muestra el contenido de la lista.
indicadores <- list(pib=30000,
inflacion=c(2.5, 3.0, 3.5),
desempleo=matrix(c(5.0, 5.5, 6.0, 4.5, 4.0, 3.5), nrow = 2),
deuda=list(publica=60,privada=40))
print(indicadores)
## $pib
## [1] 30000
##
## $inflacion
## [1] 2.5 3.0 3.5
##
## $desempleo
## [,1] [,2] [,3]
## [1,] 5.0 6.0 4.0
## [2,] 5.5 4.5 3.5
##
## $deuda
## $deuda$publica
## [1] 60
##
## $deuda$privada
## [1] 40
- Calcula el promedio de los elementos del tercer elemento de la lista
indicadores
promedio_desempleo <- mean(indicadores[[3]])
print(promedio_desempleo)
## [1] 4.75
- A través de los comandos apropiados modifica el valor de la deuda
publica en un 20% adicional al que ya tiene.
pbl <- as.numeric(indicadores[[4]][1])
indicadores[[4]][1] <- (pbl * 0.20) + pbl
print(indicadores)
## $pib
## [1] 30000
##
## $inflacion
## [1] 2.5 3.0 3.5
##
## $desempleo
## [,1] [,2] [,3]
## [1,] 5.0 6.0 4.0
## [2,] 5.5 4.5 3.5
##
## $deuda
## $deuda$publica
## [1] 72
##
## $deuda$privada
## [1] 40
Ejercicio 3
- Crea una lista llamada estudiantes que contenga los siguientes
objetos: nombre = c(“Ana”,“Luis”, “Pedro”), edad = c(18, 19, 20) y notas
= list(matematicas = c(8, 7, 9), historia = c(6, 8,7), ingles = c(9, 10,
8)). Estos objetos representan el nombre, la edad y las notas de tres
estudiantes en tres asignaturas.
estudiantes <- list(nombre = c("Ana","Luis", "Pedro"),
edad = c(18, 19, 20),
notas = list(matematicas = c(8, 7, 9),
historia = c(6, 8,7),
ingles = c(9, 10, 8)))
print(estudiantes)
## $nombre
## [1] "Ana" "Luis" "Pedro"
##
## $edad
## [1] 18 19 20
##
## $notas
## $notas$matematicas
## [1] 8 7 9
##
## $notas$historia
## [1] 6 8 7
##
## $notas$ingles
## [1] 9 10 8
- Modifica el nombre del primer estudiante por “Elena”.
estudiantes[[1]][1] <- c("Elena")
print(estudiantes)
## $nombre
## [1] "Elena" "Luis" "Pedro"
##
## $edad
## [1] 18 19 20
##
## $notas
## $notas$matematicas
## [1] 8 7 9
##
## $notas$historia
## [1] 6 8 7
##
## $notas$ingles
## [1] 9 10 8
- Añade un nuevo elemento a la lista estudiantes que sea un vector con
los géneros de los estudiantes: genero = c(“F”, “M”, “NB”)
genero <- c("F", "M", "NB")
estudiantes$genero <- genero
print(estudiantes)
## $nombre
## [1] "Elena" "Luis" "Pedro"
##
## $edad
## [1] 18 19 20
##
## $notas
## $notas$matematicas
## [1] 8 7 9
##
## $notas$historia
## [1] 6 8 7
##
## $notas$ingles
## [1] 9 10 8
##
##
## $genero
## [1] "F" "M" "NB"
- Cambia la nota de inglés del tercer estudiante por un 9.
estudiantes$notas$ingles[3] <- 9
print(estudiantes)
## $nombre
## [1] "Elena" "Luis" "Pedro"
##
## $edad
## [1] 18 19 20
##
## $notas
## $notas$matematicas
## [1] 8 7 9
##
## $notas$historia
## [1] 6 8 7
##
## $notas$ingles
## [1] 9 10 9
##
##
## $genero
## [1] "F" "M" "NB"
Ejercicio 4
- Crea el objeto lista_4, a partir de la siguiente imagen:

lista_4 <- list(a=list(a1=list(a11=c(1,2,3),
a12=c(4,5,6)),
a2=list(a21=c(7,8,9),
a22=c(10,11,12))),
b=list(b1=list(b11=c(13,14,15),
b12=c(16,17,18)),
b2=list(b21=c(19,20,21),
b22=c(22,23,24))))
print(lista_4)
## $a
## $a$a1
## $a$a1$a11
## [1] 1 2 3
##
## $a$a1$a12
## [1] 4 5 6
##
##
## $a$a2
## $a$a2$a21
## [1] 7 8 9
##
## $a$a2$a22
## [1] 10 11 12
##
##
##
## $b
## $b$b1
## $b$b1$b11
## [1] 13 14 15
##
## $b$b1$b12
## [1] 16 17 18
##
##
## $b$b2
## $b$b2$b21
## [1] 19 20 21
##
## $b$b2$b22
## [1] 22 23 24
- Cambia el nombre de la lista “b1” a “sub_lista_b”
names(lista_4$b)[1] <- "sub_lista_b"
print(names(lista_4$b))
## [1] "sub_lista_b" "b2"
## $a
## $a$a1
## $a$a1$a11
## [1] 1 2 3
##
## $a$a1$a12
## [1] 4 5 6
##
##
## $a$a2
## $a$a2$a21
## [1] 7 8 9
##
## $a$a2$a22
## [1] 10 11 12
##
##
##
## $b
## $b$sub_lista_b
## $b$sub_lista_b$b11
## [1] 13 14 15
##
## $b$sub_lista_b$b12
## [1] 16 17 18
##
##
## $b$b2
## $b$b2$b21
## [1] 19 20 21
##
## $b$b2$b22
## [1] 22 23 24
- Elimina el objeto “b22”
lista_4$b$b2 <- NULL
print(lista_4)
## $a
## $a$a1
## $a$a1$a11
## [1] 1 2 3
##
## $a$a1$a12
## [1] 4 5 6
##
##
## $a$a2
## $a$a2$a21
## [1] 7 8 9
##
## $a$a2$a22
## [1] 10 11 12
##
##
##
## $b
## $b$sub_lista_b
## $b$sub_lista_b$b11
## [1] 13 14 15
##
## $b$sub_lista_b$b12
## [1] 16 17 18
- Agrega la lista “c” dentro de lista_4, y agrégale a la lista “c” los
elementos “c11”, con una matriz identidad de orden 3 y “c12” con una
matriz de caracteres cuadrada de orden 2 vacía.
length(lista_4) <- 3
lista_4$c <- list(c1=matrix(1:9,nrow = 3,byrow = TRUE),
c2=matrix(character(0),nrow = 2,ncol = 2))
print(lista_4)
## $a
## $a$a1
## $a$a1$a11
## [1] 1 2 3
##
## $a$a1$a12
## [1] 4 5 6
##
##
## $a$a2
## $a$a2$a21
## [1] 7 8 9
##
## $a$a2$a22
## [1] 10 11 12
##
##
##
## $b
## $b$sub_lista_b
## $b$sub_lista_b$b11
## [1] 13 14 15
##
## $b$sub_lista_b$b12
## [1] 16 17 18
##
##
##
## [[3]]
## NULL
##
## $c
## $c$c1
## [,1] [,2] [,3]
## [1,] 1 2 3
## [2,] 4 5 6
## [3,] 7 8 9
##
## $c$c2
## [,1] [,2]
## [1,] NA NA
## [2,] NA NA
- Muestra la captura de pantalla de tu sesión mostrando un esquema
como el que aparece en el literal a) de este ejercicio
