Introducción
Los data frames son una de las estructuras de datos más importantes y utilizadas en R. Son similares a las tablas en bases de datos o a las hojas de cálculo en Excel. Un data frame es una estructura bidimensional que puede contener diferentes tipos de datos (numéricos, caracteres, factores, etc.) en sus columnas.
Conceptos Clave
- Estructura Bidimensional: Los data frames tienen filas y columnas.
 - Tipos de Datos Mixtos: Cada columna puede contener un tipo de dato diferente.
 - Etiquetas: Las filas y columnas pueden tener nombres.
 
Creación de Data Frames
Desde Vectores
Puedes crear un data frame combinando vectores de igual longitud.
# Crear vectores
nombres <- c("Ana", "Luis", "Carlos", "Marta")
edades <- c(23, 25, 30, 22)
puntuaciones <- c(85.5, 90.3, 78.9, 88.1)
# Crear data frame
df <- data.frame(Nombre = nombres, Edad = edades, Puntuacion = puntuaciones)
# Mostrar el data frame
print(df)Desde Archivos
Puedes importar data frames desde archivos CSV, Excel, etc.
# Importar data frame desde un archivo CSV
df <- read.csv("ruta/al/archivo.csv")
# Mostrar las primeras filas del data frame
head(df)Exploración de Data Frames
Estructura y Resumen
# Ver la estructura del data frame str(df) # Resumen estadístico de las columnas numéricas summary(df)
Acceso a Elementos
Puedes acceder a elementos específicos usando índices o nombres de columnas.
# Acceder a una columna por nombre df$Nombre # Acceder a una columna por índice df[, 1] # Acceder a una fila por índice df[1, ] # Acceder a un elemento específico df[1, "Edad"]
Manipulación de Data Frames
Añadir y Eliminar Columnas
# Añadir una nueva columna
df$Genero <- c("F", "M", "M", "F")
# Eliminar una columna
df$Genero <- NULLFiltrar Filas
Ordenar Data Frames
Ejercicios Prácticos
Ejercicio 1: Creación y Exploración
- Crea un data frame con las siguientes columnas: 
Nombre,Edad,Ciudad. - Llena el data frame con al menos 5 filas de datos.
 - Muestra la estructura y el resumen del data frame.
 
Solución
# Crear vectores
nombres <- c("Ana", "Luis", "Carlos", "Marta", "Jorge")
edades <- c(23, 25, 30, 22, 28)
ciudades <- c("Madrid", "Barcelona", "Valencia", "Sevilla", "Bilbao")
# Crear data frame
df <- data.frame(Nombre = nombres, Edad = edades, Ciudad = ciudades)
# Mostrar la estructura y el resumen
str(df)
summary(df)Ejercicio 2: Manipulación
- Añade una columna 
Puntuacioncon valores numéricos. - Filtra las filas donde la 
Edadsea mayor a 24. - Ordena el data frame por la columna 
Puntuacion. 
Solución
# Añadir columna Puntuacion df$Puntuacion <- c(85.5, 90.3, 78.9, 88.1, 92.0) # Filtrar filas df_filtrado <- df[df$Edad > 24, ] # Ordenar por Puntuacion df_ordenado <- df[order(df$Puntuacion), ] # Mostrar el data frame ordenado print(df_ordenado)
Conclusión
Los data frames son una herramienta fundamental en R para manejar y analizar datos. En esta sección, hemos aprendido cómo crear, explorar y manipular data frames. Estos conceptos son esenciales para cualquier análisis de datos en R y serán la base para temas más avanzados en los siguientes módulos.
Programación en R: De Principiante a Avanzado
Módulo 1: Introducción a R
- Introducción a R y RStudio
 - Sintaxis Básica de R
 - Tipos y Estructuras de Datos
 - Operaciones y Funciones Básicas
 - Importación y Exportación de Datos
 
Módulo 2: Manipulación de Datos
- Vectores y Listas
 - Matrices y Arreglos
 - Data Frames
 - Factores
 - Manipulación de Datos con dplyr
 - Manipulación de Cadenas
 
Módulo 3: Visualización de Datos
- Introducción a la Visualización de Datos
 - Gráficos Base R
 - Fundamentos de ggplot2
 - ggplot2 Avanzado
 - Visualizaciones Interactivas con plotly
 
Módulo 4: Análisis Estadístico
- Estadísticas Descriptivas
 - Distribuciones de Probabilidad
 - Pruebas de Hipótesis
 - Correlación y Regresión
 - ANOVA y Pruebas Chi-Cuadrado
 
Módulo 5: Manejo Avanzado de Datos
- Manejo de Fechas y Tiempos
 - Reestructuración de Datos
 - Trabajo con Grandes Conjuntos de Datos
 - Web Scraping
 - APIs y JSON
 
Módulo 6: Conceptos Avanzados de Programación
- Escritura de Funciones
 - Depuración y Manejo de Errores
 - Programación Orientada a Objetos en R
 - Programación Funcional
 - Computación Paralela
 
Módulo 7: Aprendizaje Automático con R
- Introducción al Aprendizaje Automático
 - Preprocesamiento de Datos
 - Aprendizaje Supervisado
 - Aprendizaje No Supervisado
 - Evaluación y Ajuste de Modelos
 
Módulo 8: Temas Especializados
- Análisis de Series Temporales
 - Análisis de Datos Espaciales
 - Minería de Textos y Procesamiento de Lenguaje Natural
 - Bioinformática con R
 - Análisis de Datos Financieros
 
