Reto dataframes en R

Proyecto
Avanzado
R
R
30 min
500 XP
Actualizado: 17/05/2025

¡Practica y certifícate!

Retroalimentación
Soluciones
Certificado
Comenzar

Descripción

En este proyecto, deberás manipular el dataset mtcars utilizando R, específicamente con las librerías dplyr y tidyr. Se te pedirá seleccionar y filtrar columnas, ordenar y renombrar datos, crear nuevas columnas, agrupar información, unir dataframes y transformar el formato de los datos, manejando duplicados cuando sea necesario. Al final de cada operación, deberás imprimir los resultados para verificar el correcto funcionamiento.

1. Cargar las librerías y los datos

  • Asegúrate de estar trabajando en RStudio en tu ordenador local.
  • Verifica si tienes instaladas las librerías dplyr y tidyr. Si no las tienes, instálalas y cárgalas.
  • Utiliza la función data() para cargar el dataset mtcars y conviértelo en un dataframe si es necesario:
data(mtcars)
df <- as.data.frame(mtcars)

2. Selección de columnas y filtrado de filas

  • Emplea la función select() para escoger las columnas mpg, cyl, hp y gear.
  • Aplica filter() para conservar únicamente las filas donde el número de cilindros (cyl) sea mayor que 4.

3. Ordenación y renombrado de columnas

  • Usa la función arrange() para ordenar los datos de forma descendente según la columna hp (potencia).
  • Renombra las columnas mpg y hp a consumo y potencia respectivamente utilizando rename().

4. Creación de nuevas columnas y agregación de datos

  • Con mutate(), crea una nueva columna llamada eficiencia, calculada como el cociente entre consumo y potencia.
  • Usa group_by() y summarise() para agrupar los datos por el número de cilindros (cyl) y calcular el consumo medio y la potencia máxima por cilindro.

5. Creación del segundo dataframe y unión de dataframes

  • Genera un nuevo dataframe con la siguiente información sobre gear (número de marchas) y tipo_transmision (tipo de transmisión).
gear          tipo_transmision
3Manual
4Automática
5Semiautomática
  • Realiza un left_join() para combinar el dataframe principal con este segundo dataframe, añadiendo la columna tipo_transmision.

6. Transformación de formatos

  • Transforma el dataframe a formato largo utilizando pivot_longer() para las columnas consumo, potencia y eficiencia.
  • Identifica las combinaciones duplicadas: Agrupa por las columnas clave (cyl, gear, tipo_transmision, medida) para identificar posibles duplicados antes de transformar nuevamente a formato ancho.
  • Transforma de nuevo a formato ancho con pivot_wider(), aplicando una función de agregación como mean() para manejar los duplicados.

7. Verificación

  • Imprime el dataframe después de cada operación para asegurarte de que cada paso se ha realizado correctamente.

Solución al ejercicio

Contenido bloqueado

¡Desbloquea la solución completa!

Completa el examen para acceder a la solución paso a paso, explicaciones detalladas y mejores prácticas.

solution.js
JavaScript
1 function solveChallenge ( input ) {
2 // Algoritmo optimizado O(n log n)
3 const data = parseInput ( input );
4 const sorted = data . sort (( a , b ) => a - b );
5
6 // Aplicar técnica de dos punteros
7 let left = 0 , right = sorted . length - 1 ;
8 const result = [];
9
10 while ( left < right ) {
11 const sum = sorted [ left ] + sorted [ right ];
12 if ( sum === target ) {
13 result . push ([ sorted [ left ], sorted [ right ]]);
14 left ++; right --;
15 } else if ( sum < target ) {
16 left ++;
17 } else {
18 right --;
19 }
20 }
21
22 return result ;
23 }
Código completo
Explicaciones
Mejores prácticas
+1.200 developers han resuelto este ejercicio de programación

Practica con exámenes de R

Mejora tus habilidades con cientos de exámenes de práctica, recibe retroalimentación instantánea y obtén tu certificación cuando estés listo.

Retroalimentación

Aprende de tus errores

Progreso

Mide tu avance

Certificación

Valida tus habilidades

Únete a miles de desarrolladores mejorando sus habilidades

⭐⭐⭐⭐⭐
4.9/5 valoración