Introducción

En R, los vectores y las listas son dos de las estructuras de datos más fundamentales y versátiles. Comprender cómo crear, manipular y utilizar estas estructuras es esencial para cualquier programador que trabaje con R. En esta sección, aprenderemos sobre:

  1. Vectores: Qué son, cómo crearlos y manipularlos.
  2. Listas: Qué son, cómo crearlas y manipularlas.
  3. Diferencias clave entre vectores y listas.

Vectores

¿Qué es un Vector?

Un vector es una secuencia de elementos del mismo tipo. En R, los vectores pueden contener datos numéricos, caracteres o lógicos.

Creación de Vectores

Para crear un vector en R, utilizamos la función c(), que significa "concatenar".

# Vector numérico
numeros <- c(1, 2, 3, 4, 5)
print(numeros)

# Vector de caracteres
caracteres <- c("a", "b", "c", "d")
print(caracteres)

# Vector lógico
logicos <- c(TRUE, FALSE, TRUE)
print(logicos)

Operaciones con Vectores

Podemos realizar diversas operaciones con vectores, como sumar, restar, multiplicar y dividir.

# Suma de vectores
v1 <- c(1, 2, 3)
v2 <- c(4, 5, 6)
suma <- v1 + v2
print(suma)

# Multiplicación de vectores
producto <- v1 * v2
print(producto)

Indexación de Vectores

Podemos acceder a elementos específicos de un vector utilizando corchetes [].

# Acceder al segundo elemento
segundo_elemento <- numeros[2]
print(segundo_elemento)

# Acceder a múltiples elementos
varios_elementos <- numeros[c(1, 3, 5)]
print(varios_elementos)

Funciones Útiles para Vectores

R proporciona varias funciones útiles para trabajar con vectores.

# Longitud del vector
longitud <- length(numeros)
print(longitud)

# Suma de todos los elementos
suma_total <- sum(numeros)
print(suma_total)

# Promedio de los elementos
promedio <- mean(numeros)
print(promedio)

Listas

¿Qué es una Lista?

Una lista es una estructura de datos que puede contener elementos de diferentes tipos y tamaños. A diferencia de los vectores, los elementos de una lista no tienen que ser del mismo tipo.

Creación de Listas

Para crear una lista en R, utilizamos la función list().

# Lista con diferentes tipos de elementos
mi_lista <- list(numeros = c(1, 2, 3), 
                 caracteres = c("a", "b", "c"), 
                 logicos = c(TRUE, FALSE, TRUE))
print(mi_lista)

Acceso a Elementos de una Lista

Podemos acceder a los elementos de una lista utilizando el operador $ o corchetes dobles [[ ]].

# Acceder a un elemento por nombre
numeros_lista <- mi_lista$numeros
print(numeros_lista)

# Acceder a un elemento por índice
caracteres_lista <- mi_lista[[2]]
print(caracteres_lista)

Modificación de Elementos de una Lista

Podemos modificar los elementos de una lista de manera similar a cómo accedemos a ellos.

# Modificar un elemento
mi_lista$numeros <- c(4, 5, 6)
print(mi_lista$numeros)

Añadir y Eliminar Elementos

Podemos añadir nuevos elementos a una lista y eliminar elementos existentes.

# Añadir un nuevo elemento
mi_lista$nuevo_elemento <- c("nuevo", "elemento")
print(mi_lista)

# Eliminar un elemento
mi_lista$caracteres <- NULL
print(mi_lista)

Diferencias Clave entre Vectores y Listas

Característica Vectores Listas
Tipo de Elementos Homogéneos (mismo tipo) Heterogéneos (diferentes tipos)
Acceso a Elementos Índices numéricos Índices numéricos o nombres
Funciones Comunes length(), sum(), mean() length(), names()

Ejercicios Prácticos

Ejercicio 1: Creación y Manipulación de Vectores

  1. Crea un vector numérico con los números del 1 al 10.
  2. Calcula la suma y el promedio de los elementos del vector.
  3. Accede al cuarto y séptimo elemento del vector.
# Solución
vector_ejercicio <- c(1:10)
suma_vector <- sum(vector_ejercicio)
promedio_vector <- mean(vector_ejercicio)
cuarto_elemento <- vector_ejercicio[4]
septimo_elemento <- vector_ejercicio[7]

print(suma_vector)
print(promedio_vector)
print(cuarto_elemento)
print(septimo_elemento)

Ejercicio 2: Creación y Manipulación de Listas

  1. Crea una lista que contenga un vector numérico, un vector de caracteres y un vector lógico.
  2. Accede al vector de caracteres y modifícalo para que contenga "x", "y", "z".
  3. Añade un nuevo elemento a la lista que sea un vector con los números del 11 al 15.
# Solución
lista_ejercicio <- list(numeros = c(1, 2, 3), 
                        caracteres = c("a", "b", "c"), 
                        logicos = c(TRUE, FALSE, TRUE))

lista_ejercicio$caracteres <- c("x", "y", "z")
lista_ejercicio$nuevos_numeros <- c(11:15)

print(lista_ejercicio)

Conclusión

En esta sección, hemos aprendido sobre vectores y listas en R, dos estructuras de datos fundamentales. Hemos visto cómo crearlos, manipularlos y las diferencias clave entre ellos. Con esta base, estarás preparado para manejar datos de manera más eficiente en R. En la próxima sección, exploraremos matrices y arreglos, que son extensiones de los conceptos que hemos cubierto aquí.

Programación en R: De Principiante a Avanzado

Módulo 1: Introducción a R

Módulo 2: Manipulación de Datos

Módulo 3: Visualización de Datos

Módulo 4: Análisis Estadístico

Módulo 5: Manejo Avanzado de Datos

Módulo 6: Conceptos Avanzados de Programación

Módulo 7: Aprendizaje Automático con R

Módulo 8: Temas Especializados

Módulo 9: Proyecto y Estudios de Caso

© Copyright 2024. Todos los derechos reservados