Ejercicio 1

  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.

Creación de vectores

vector_apple<-c(120,125,130)
vector_google<-c(1800,1850,1900)
vector_amazon<-c(3200,3300,3400)

Creación de lista

lista_accciones <- list(apple = vector_apple, google = vector_google, amazon = vector_amazon) 
  1. 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.

Añadir elemento microsoft

vector_microsoft <- c(210,215,220)

lista_accciones <- list(apple = vector_apple, google = vector_google, amazon = vector_amazon, microsoft = vector_microsoft)
  1. Extrae el segundo elemento del vector google que está dentro de la lista acciones
lista_accciones [[2]]
## [1] 1800 1850 1900

Extraje el Segundo elemento de vector google

lista_accciones [[2]][[2]] 
## [1] 1850

Ejercicio 2

  1. 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.

Creación lista indicadores

lista_indicadores <- list(PIB = 300, 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))
  1. Calcula el promedio de los elementos del tercer elemento de la lista indicadores
lista_indicadores [[3]]
##      [,1] [,2] [,3]
## [1,]  5.0  6.0  4.0
## [2,]  5.5  4.5  3.5

Promedio del tercer elemento de la lista

promedio_indicadores <- c(5.0+5.5+6.0+4.5+4+3.5)/5 
print(promedio_indicadores)
## [1] 5.7
  1. A través de los comandos apropiados modifica el valor de la deuda publica en un 20% adicional al que ya tiene.

Modificación de la deuda publica 20% adicional

lista_indicadores [[4]][[1]]<- 80
lista_indicadores [[4]]
## $publica
## [1] 80
## 
## $privada
## [1] 40
print(lista_indicadores)
## $PIB
## [1] 300
## 
## $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] 80
## 
## $deuda$privada
## [1] 40

Ejercicio 3

  1. 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.

Creación lista

lista_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))) 
  1. Modifica el nombre del primer estudiante por “Elena”.

Modificación de el nombre del primer estudiante

lista_estudiantes [[1]] [[1]]<- "Elena" 
lista_estudiantes [[1]]
## [1] "Elena" "Luis"  "Pedro"
  1. 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”)

Añade a la lista estudiantes el genero.

lista_estudiantes <- list(nombre = c("Ana","Luis","Pedro"), edad = c(18,19,20), genero = c("F","M","NB"), notas = list(matematicas = c(8,7,9), historia = c(6,8,7), ingles = c(9,10,8)))
  1. Cambia la nota de inglés del tercer estudiante por un 9.
Cambio de nota de inglés tercer estudiante
lista_estudiantes [[4]] [[3]] [[3]] <- 9 
lista_estudiantes [[4]][[3]]
## [1]  9 10  9

Ejercicio 4

  1. Crea el objeto lista_4, a partir de la siguiente imagen:

Imagen lista_4

library(png)
library(grid)
img <- readPNG("lista_4_optimized.png")
 grid.raster(img)

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))))
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
  1. Cambia el nombre de la lista “b1” a “sub_lista_b”

Cambia el nombre de la lista “b1” a “sub_lista_b”

names(lista_4[[2]])[[1]]<- "sub_lista_b"
lista_4 [[2]]
## $sub_lista_b
## $sub_lista_b$b11
## [1] 13 14 15
## 
## $sub_lista_b$b12
## [1] 16 17 18
## 
## 
## $b2
## $b2$b21
## [1] 19 20 21
## 
## $b2$b22
## [1] 22 23 24
  1. Elimina el objeto “b22”

Elimina el objeto “b22”

lista_4 [[2]][[2]][[2]]<- NULL
lista_4 [[2]][[2]]
## $b21
## [1] 19 20 21
  1. 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.
Creación lista “c”, creación matriz identidad y creación de matriz vacia
length(lista_4) <- 3
names(lista_4) [3] <- "c"
lista_4 [[3]] <- list(c11 = diag(3), c12 = matrix(data = 0, nrow = 2, ncol = 2))
lista_4 [[3]]
## $c11
##      [,1] [,2] [,3]
## [1,]    1    0    0
## [2,]    0    1    0
## [3,]    0    0    1
## 
## $c12
##      [,1] [,2]
## [1,]    0    0
## [2,]    0    0
  1. Muestra la captura de pantalla de tu sesión mostrando un esquema como el que apareceen el literal a) de este ejercicio
Imagen_4_final
library(png)
library(grid)
img <- readPNG("lista_4_final_optimized.png")
 grid.raster(img)

Bibliografía

(Gonzalez, 2019)

Gonzalez, R. (2019). Qué son las LISTAS en r 09 CURSO r STUDIO. https://www.youtube.com/watch?v=8ndmtEIUH0s