Parte 1

Ejercicio 1

  1. Defina 4 vectores con la siguiente información de 4 individuos:
  • Primer nombre
  • Primer apellido
  • Cédula
  • ¿Está casado? (TRUE or FALSE)
  1. Imprima cada vector

Ejemplo de la salida (no se muestra el código)

## [1] "Miguel"  "Juan"    "Viviana"
## [1] "Jiménez" "Rendón"  "Ossa"
## [1]   71371862   71352699 1036610897
## [1]  TRUE FALSE  TRUE

Ejercicio 2

Identifique la clase de cada uno de los 4 vectores creados anteriormente mediante la función class().

Ejemplo de la salida (no se muestra el código)

## [1] "character"
## [1] "character"
## [1] "numeric"
## [1] "logical"

Ejercicio 3

  1. Defina un data frame donde cada columna sea uno de los vectores creados anteriormente.

  2. Imprima el data frame.

Ejemplo de la salida (no se muestra el código)

##    nombre apellido     cedula casado
## 1  Miguel  Jiménez   71371862   TRUE
## 2    Juan   Rendón   71352699  FALSE
## 3 Viviana     Ossa 1036610897   TRUE

Ejercicio 4

Seleccione del data frame creado en el Ejercicio 3 la información de cada individuo.

Ejemplo de la salida (no se muestra el código)

##   nombre apellido   cedula casado
## 1 Miguel  Jiménez 71371862   TRUE
##   nombre apellido   cedula casado
## 2   Juan   Rendón 71352699  FALSE
##    nombre apellido     cedula casado
## 3 Viviana     Ossa 1036610897   TRUE

Ejercicio 5

Seleccione del data frame creado en el Ejercicio 3 el nombre y la cédula de todos los individuos.

Ejemplo de la salida (no se muestra el código)

##    nombre     cedula
## 1  Miguel   71371862
## 2    Juan   71352699
## 3 Viviana 1036610897

Ejercicio 6

  1. Cree 3 vectores con los precios del 6 al 26 de febrero de 2020 de las acciones de Bancolombia, Almacenes Éxito y Grupo Argos con la información que se presenta a continuación.
bancol<-c(39680, 40340, 40080, 40520, 43860, 44180, 43900, 44460, 44700, 44480, 43980, 44080, 44480, 
44280, 44200)

exito <- c(15300, 13800, 14540, 14700, 14600, 14160, 14360, 14500, 14520, 14120, 14480, 14400, 14700, 
15000, 14900)

argos <-c(5250,5460,5610,5800,6060,6110,6120,6180,6200,6200,6230,6140,6220,6310,6370)
  1. Visualice cada uno de los vectores mediante un gráfico. Use la función plot().

Ejemplo de la salida (no se muestra el código)

Ejercicio 7

  1. Defina un data frame donde cada columna sea uno de los vectores creados anteriormente.

  2. Imprima el data frame creado.

Ejemplo de la salida (no se muestra el código)

##    bancol exito argos
## 1   39680 15300  5250
## 2   40340 13800  5460
## 3   40080 14540  5610
## 4   40520 14700  5800
## 5   43860 14600  6060
## 6   44180 14160  6110
## 7   43900 14360  6120
## 8   44460 14500  6180
## 9   44700 14520  6200
## 10  44480 14120  6200
## 11  43980 14480  6230
## 12  44080 14400  6140
## 13  44480 14700  6220
## 14  44280 15000  6310
## 15  44200 14900  6370

Ejercicio 8

Seleccione del data frame creado en el Ejercicio 7 la información del Grupo Argos y de Almacenes Éxito.

Ejemplo de la salida (no se muestra el código)

##    argos exito
## 1   5250 15300
## 2   5460 13800
## 3   5610 14540
## 4   5800 14700
## 5   6060 14600
## 6   6110 14160
## 7   6120 14360
## 8   6180 14500
## 9   6200 14520
## 10  6200 14120
## 11  6230 14480
## 12  6140 14400
## 13  6220 14700
## 14  6310 15000
## 15  6370 14900

Ejercicio 9

Seleccione del data frame creado en el Ejercicio 7 la información de cada empresa.

Ejemplo de la salida (no se muestra el código)

##  [1] 39680 40340 40080 40520 43860 44180 43900 44460 44700 44480 43980 44080
## [13] 44480 44280 44200
##  [1] 15300 13800 14540 14700 14600 14160 14360 14500 14520 14120 14480 14400
## [13] 14700 15000 14900
##  [1] 5250 5460 5610 5800 6060 6110 6120 6180 6200 6200 6230 6140 6220 6310 6370

Ejercicio 10

  1. Defina una matriz 3x15 donde cada fila sea uno de los vectores creados anteriormente.

  2. Imprima la matriz.

Ejemplo de la salida (no se muestra el código)

##         [,1]  [,2]  [,3]  [,4]  [,5]  [,6]  [,7]  [,8]  [,9] [,10] [,11] [,12]
## bancol 39680 40340 40080 40520 43860 44180 43900 44460 44700 44480 43980 44080
## exito  15300 13800 14540 14700 14600 14160 14360 14500 14520 14120 14480 14400
## argos   5250  5460  5610  5800  6060  6110  6120  6180  6200  6200  6230  6140
##        [,13] [,14] [,15]
## bancol 44480 44280 44200
## exito  14700 15000 14900
## argos   6220  6310  6370
  1. Seleccione de la matriz creada la información de Bancolombia y del Grupo Argos.

Ejemplo de la salida (no se muestra el código)

##         [,1]  [,2]  [,3]  [,4]  [,5]  [,6]  [,7]  [,8]  [,9] [,10] [,11] [,12]
## bancol 39680 40340 40080 40520 43860 44180 43900 44460 44700 44480 43980 44080
## argos   5250  5460  5610  5800  6060  6110  6120  6180  6200  6200  6230  6140
##        [,13] [,14] [,15]
## bancol 44480 44280 44200
## argos   6220  6310  6370

Parte 2

options(scipen = 999)
data <- read.csv("auto-mpg.csv")

Ejercicio 1

Explore el data frame data usando las funciones summary() y str(). Haga un comentario sobre las diferencias entre los resultados de la columna car_name con el resto de las columnas.

##        No             mpg          cylinders      displacement  
##  Min.   :  1.0   Min.   : 9.00   Min.   :3.000   Min.   : 68.0  
##  1st Qu.:100.2   1st Qu.:17.50   1st Qu.:4.000   1st Qu.:104.2  
##  Median :199.5   Median :23.00   Median :4.000   Median :148.5  
##  Mean   :199.5   Mean   :23.51   Mean   :5.455   Mean   :193.4  
##  3rd Qu.:298.8   3rd Qu.:29.00   3rd Qu.:8.000   3rd Qu.:262.0  
##  Max.   :398.0   Max.   :46.60   Max.   :8.000   Max.   :455.0  
##    horsepower        weight      acceleration     model_year   
##  Min.   : 46.0   Min.   :1613   Min.   : 8.00   Min.   :70.00  
##  1st Qu.: 76.0   1st Qu.:2224   1st Qu.:13.82   1st Qu.:73.00  
##  Median : 92.0   Median :2804   Median :15.50   Median :76.00  
##  Mean   :104.1   Mean   :2970   Mean   :15.57   Mean   :76.01  
##  3rd Qu.:125.0   3rd Qu.:3608   3rd Qu.:17.18   3rd Qu.:79.00  
##  Max.   :230.0   Max.   :5140   Max.   :24.80   Max.   :82.00  
##    car_name        
##  Length:398        
##  Class :character  
##  Mode  :character  
##                    
##                    
## 
## 'data.frame':    398 obs. of  9 variables:
##  $ No          : int  1 2 3 4 5 6 7 8 9 10 ...
##  $ mpg         : num  28 19 36 28 21 23 15.5 32.9 16 13 ...
##  $ cylinders   : int  4 3 4 4 6 4 8 4 6 8 ...
##  $ displacement: num  140 70 107 97 199 115 304 119 250 318 ...
##  $ horsepower  : int  90 97 75 92 90 95 120 100 105 150 ...
##  $ weight      : int  2264 2330 2205 2288 2648 2694 3962 2615 3897 3755 ...
##  $ acceleration: num  15.5 13.5 14.5 17 15 15 13.9 14.8 18.5 14 ...
##  $ model_year  : int  71 72 82 72 70 75 76 81 75 76 ...
##  $ car_name    : chr  "chevrolet vega 2300" "mazda rx2 coupe" "honda accord" "datsun 510 (sw)" ...

Ejercicio 2

  1. Elimine la columna No del data frame data.

  2. Cambie el nombre de las columnas de data (excepto la columna “mpg”) por los siguientes nombres:

    • mpg (queda igual)
    • cilindros
    • cilindraje
    • potencia
    • peso
    • aceleracion
    • modelo
    • nombre_carro
  3. Imprima los 5 primeras filas de data con la función head().

##   mpg cilindros cilindraje potencia peso aceleracion modelo        nombre_carro
## 1  28         4        140       90 2264        15.5     71 chevrolet vega 2300
## 2  19         3         70       97 2330        13.5     72     mazda rx2 coupe
## 3  36         4        107       75 2205        14.5     82        honda accord
## 4  28         4         97       92 2288        17.0     72     datsun 510 (sw)
## 5  21         6        199       90 2648        15.0     70         amc gremlin

Ejercicio 3

  1. Identifique la clase de data mediante la función class().
## [1] "data.frame"
  1. Identifique la clase de las variables cilindros, aceleración, modelo y nombre_carro mediante la función class().
## [1] "integer"
## [1] "numeric"
## [1] "integer"
## [1] "character"

Ejercicio 4

  1. Defina un data frame con el nombre cilindros_4 en donde se seleccione toda la información de los carros con 4 cilindros.

  2. Imprima las últimas 7 filas de cilindros_4 con la función tail().

##      mpg cilindros cilindraje potencia peso aceleracion modelo
## 386 35.1         4         81       60 1760        16.1     81
## 388 44.6         4         91       67 1850        13.8     80
## 391 32.1         4         98       70 2120        15.5     80
## 392 23.9         4        119       97 2405        14.9     78
## 395 34.5         4        105       70 2150        14.9     79
## 396 38.1         4         89       60 1968        18.8     80
## 397 30.5         4         98       63 2051        17.0     77
##              nombre_carro
## 386      honda civic 1300
## 388   honda civic 1500 gl
## 391    chevrolet chevette
## 392         datsun 200-sx
## 395  plymouth horizon tc3
## 396 toyota corolla tercel
## 397    chevrolet chevette

Ejercicio 5

  1. Calcule la suma de los pesos de todos los carros con 3 cilindros.
## [1] 9594
  1. Calcule la suma de las millas por galón (mpg) de todos los carros con 8 cilindros.
## [1] 1541.2

Ejercicio 6

  1. Agregue a data la columna edad con la edad que en el año 2023 tiene cada carro. Por ejemplo, el primer carro es modelo 71 y por lo tanto su edad es: 2023 - 1971 = 52.

  2. Imprima las 9 primeras filas de data usando la función head()

##    mpg cilindros cilindraje potencia peso aceleracion modelo
## 1 28.0         4        140       90 2264        15.5     71
## 2 19.0         3         70       97 2330        13.5     72
## 3 36.0         4        107       75 2205        14.5     82
## 4 28.0         4         97       92 2288        17.0     72
## 5 21.0         6        199       90 2648        15.0     70
## 6 23.0         4        115       95 2694        15.0     75
## 7 15.5         8        304      120 3962        13.9     76
## 8 32.9         4        119      100 2615        14.8     81
## 9 16.0         6        250      105 3897        18.5     75
##                nombre_carro edad
## 1       chevrolet vega 2300   52
## 2           mazda rx2 coupe   51
## 3              honda accord   41
## 4           datsun 510 (sw)   51
## 5               amc gremlin   53
## 6                audi 100ls   48
## 7               amc matador   47
## 8              datsun 200sx   42
## 9 chevroelt chevelle malibu   48

Ejercicio 7

  1. Agregue la columna precio_actual suponiendo que el precio actual de cada carro es el cilindraje multiplicado por 1500000. Por ejemplo, el primer carro tiene un cilindraje de 140, por lo tanto su precio actual es: 140*1500000 = 210000000.

  2. Imprima las 8 últimas filas de data usando la función tail().

##      mpg cilindros cilindraje potencia peso aceleracion modelo
## 391 32.1         4         98       70 2120        15.5     80
## 392 23.9         4        119       97 2405        14.9     78
## 393 13.0         8        350      155 4502        13.5     72
## 394 16.5         6        168      120 3820        16.7     76
## 395 34.5         4        105       70 2150        14.9     79
## 396 38.1         4         89       60 1968        18.8     80
## 397 30.5         4         98       63 2051        17.0     77
## 398 19.0         6        232      100 2634        13.0     71
##              nombre_carro edad precio_actual
## 391    chevrolet chevette   43     147000000
## 392         datsun 200-sx   45     178500000
## 393  buick lesabre custom   51     525000000
## 394    mercedes-benz 280s   47     252000000
## 395  plymouth horizon tc3   44     157500000
## 396 toyota corolla tercel   43     133500000
## 397    chevrolet chevette   46     147000000
## 398           amc gremlin   52     348000000

Ejercicio 8

  1. Agregue la columna precio_inicial suponiendo que el precio inicial de cada carro es el “precio_actual” llevado al año del modelo con una tasa de descuento del 4% efectivo anual. Por ejemplo, el precio actual del primer carro es 210000000 y tiene una edad de 52 años. Entonces, su precio inicial es: 210000000/(1 + 0.04) ^ 52 = 27320312.

  2. Imprima las 6 primeras filas de data usando la función head()

##   mpg cilindros cilindraje potencia peso aceleracion modelo        nombre_carro
## 1  28         4        140       90 2264        15.5     71 chevrolet vega 2300
## 2  19         3         70       97 2330        13.5     72     mazda rx2 coupe
## 3  36         4        107       75 2205        14.5     82        honda accord
## 4  28         4         97       92 2288        17.0     72     datsun 510 (sw)
## 5  21         6        199       90 2648        15.0     70         amc gremlin
## 6  23         4        115       95 2694        15.0     75          audi 100ls
##   edad precio_actual precio_inicial
## 1   52     210000000       27320312
## 2   51     105000000       14206562
## 3   41     160500000       32144607
## 4   51     145500000       19686236
## 5   53     298500000       37340261
## 6   48     172500000       26253597

Ejercicio 9

Realice el histograma de la variable mpg (millas por galón). Use la función hist() con breaks = 30.

Ejercicio 10

Realice un gráfico de dispersión de la columna cilindraje contra la variable potencia. Haga un comentario sobre el resultado.