Estructuras de datos en R

Los vectores en R son secuencias de objetos del mismo tipo (p.e., n?meros). Los encontraremos, sobre todo,como columnas de una tabla; que son, efectivamente, vectores

Ejemplo utilizando un conjunto de datos iris

Hacer varios vectores de dicho conjunto de datos

Creando vectores

El código siguiente crea dos vectores, uno numérico y otro categórico (del tipo factor ó character).

x <- 1:10
y <- iris$Species


x
##  [1]  1  2  3  4  5  6  7  8  9 10
y
##   [1] setosa     setosa     setosa     setosa     setosa     setosa    
##   [7] setosa     setosa     setosa     setosa     setosa     setosa    
##  [13] setosa     setosa     setosa     setosa     setosa     setosa    
##  [19] setosa     setosa     setosa     setosa     setosa     setosa    
##  [25] setosa     setosa     setosa     setosa     setosa     setosa    
##  [31] setosa     setosa     setosa     setosa     setosa     setosa    
##  [37] setosa     setosa     setosa     setosa     setosa     setosa    
##  [43] setosa     setosa     setosa     setosa     setosa     setosa    
##  [49] setosa     setosa     versicolor versicolor versicolor versicolor
##  [55] versicolor versicolor versicolor versicolor versicolor versicolor
##  [61] versicolor versicolor versicolor versicolor versicolor versicolor
##  [67] versicolor versicolor versicolor versicolor versicolor versicolor
##  [73] versicolor versicolor versicolor versicolor versicolor versicolor
##  [79] versicolor versicolor versicolor versicolor versicolor versicolor
##  [85] versicolor versicolor versicolor versicolor versicolor versicolor
##  [91] versicolor versicolor versicolor versicolor versicolor versicolor
##  [97] versicolor versicolor versicolor versicolor virginica  virginica 
## [103] virginica  virginica  virginica  virginica  virginica  virginica 
## [109] virginica  virginica  virginica  virginica  virginica  virginica 
## [115] virginica  virginica  virginica  virginica  virginica  virginica 
## [121] virginica  virginica  virginica  virginica  virginica  virginica 
## [127] virginica  virginica  virginica  virginica  virginica  virginica 
## [133] virginica  virginica  virginica  virginica  virginica  virginica 
## [139] virginica  virginica  virginica  virginica  virginica  virginica 
## [145] virginica  virginica  virginica  virginica  virginica  virginica 
## Levels: setosa versicolor virginica
class(x)
## [1] "integer"
class(y)
## [1] "factor"
length(x) # Vector numérico
## [1] 10
length(y) # Vector tipo character o factor
## [1] 150
# Utiliza ls() para visualizar vectores
ls()
## [1] "x" "y"

el operador : para crear secuencias de números enteros

1:5
## [1] 1 2 3 4 5
5:1
## [1] 5 4 3 2 1

Utilizando el operador de concatenación c para inicialziar vectores

c(1:5, 5:1)
##  [1] 1 2 3 4 5 5 4 3 2 1
c(1, 5, -1, 4)
## [1]  1  5 -1  4
c("uno", "dos", "tres")
## [1] "uno"  "dos"  "tres"
# Asignando a una variable

nombres <- c("Hugo", "Paco", "Luis", "Paty", "Norma")
nombres
## [1] "Hugo"  "Paco"  "Luis"  "Paty"  "Norma"

Una secuencia es un vector

# ? seq()
secuencia1.4 <- seq(1, 4)
secuencia1.4
## [1] 1 2 3 4

N?meros aleatorios a un vector

# 10 números aleatorios entre 30 y 50
# ? sample()
# Sin referenciar los parámetros de la función sample
aleatorios <- sample(x=30:50, size = 10, replace = TRUE)

aleatorios
##  [1] 41 31 33 39 34 39 47 48 45 46
# referenciando los parámetros de la función sample
aleatorios <- sample(30:50, 10, replace = TRUE)

aleatorios
##  [1] 38 50 31 30 40 38 35 46 32 32

Una repetición de números

# ? rep

rep(1:4, 4)
##  [1] 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
rep(1:4, each = 4)
##  [1] 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4
# Algunos patrones de repeticiones
rep(1:4, 2)
## [1] 1 2 3 4 1 2 3 4
rep(1:4, each = 2)
## [1] 1 1 2 2 3 3 4 4
rep(1:4, c(2,2,2,2))
## [1] 1 1 2 2 3 3 4 4
rep(1:4, times = 4:1)
##  [1] 1 1 1 1 2 2 2 3 3 4
rep(1:4, c(2,1,2,1))
## [1] 1 1 2 3 3 4
rep(1:4, each = 2, len = 4)
## [1] 1 1 2 2
rep(1:4, each = 2, len = 10)
##  [1] 1 1 2 2 3 3 4 4 1 1
rep(1:4, each = 2, times = 3)
##  [1] 1 1 2 2 3 3 4 4 1 1 2 2 3 3 4 4 1 1 2 2 3 3 4 4

Algunas funciones para inspeccionar vectores

plot(x)     # Muestra puntos enjun gráfico

length(x)   # Longitud de un vector
## [1] 10
table(y) #  muy importante!, Frecuencias de valores tipo char 
## y
##     setosa versicolor  virginica 
##         50         50         50
summary(y)   # Genera datos estadísticos generales. Frecuencia 
##     setosa versicolor  virginica 
##         50         50         50
head(x)   # Los primeros 6 elementos, observaciones
## [1] 1 2 3 4 5 6
tail(x)   # Los últimos 6 elementos, observaciones
## [1]  5  6  7  8  9 10

Encontrar o seleccionar elementos de un vector

x         # que contiene x
##  [1]  1  2  3  4  5  6  7  8  9 10
x <- x^2  # Eleva al cuadrado los valores del vector x

# como queda el vector x
x 
##  [1]   1   4   9  16  25  36  49  64  81 100
x[1:3]    # Selecciona o muestra los elementos del 1 al 3
## [1] 1 4 9
x[c(1,3)] # Unicamente el elemento  1 y 3 del vector
## [1] 1 9
x[x > 25] # Los elementos cuyos contenidos sean mayores a 25
## [1]  36  49  64  81 100
x[3:1]    # Los elementos del 3 al 1.  a la inversa 
## [1] 9 4 1
x[-(1:2)] # No incluye los elemento
## [1]   9  16  25  36  49  64  81 100
x[-length(x)]  # No incluye elemento último
## [1]  1  4  9 16 25 36 49 64 81

El corchete también permite seleccionar elementos de un vector por nombre

z <- table(iris$Species)
z["setosa"]
## setosa 
##     50

cambiar el contenido de los elementos seleccionados de un vector

z <- 1:10
z[z < 5] <- 100
z
##  [1] 100 100 100 100   5   6   7   8   9  10

El nombre de las columnas de una tabla (data.frame) tambi?n es un vector. Cambiar el nombre de una columna.

mi.iris <- iris # una copia de iris
colnames(mi.iris)[5] <- "Especie"
mi.iris # Verificar el nombre de la quinta columna de la tabla mi.iris
##     Sepal.Length Sepal.Width Petal.Length Petal.Width    Especie
## 1            5.1         3.5          1.4         0.2     setosa
## 2            4.9         3.0          1.4         0.2     setosa
## 3            4.7         3.2          1.3         0.2     setosa
## 4            4.6         3.1          1.5         0.2     setosa
## 5            5.0         3.6          1.4         0.2     setosa
## 6            5.4         3.9          1.7         0.4     setosa
## 7            4.6         3.4          1.4         0.3     setosa
## 8            5.0         3.4          1.5         0.2     setosa
## 9            4.4         2.9          1.4         0.2     setosa
## 10           4.9         3.1          1.5         0.1     setosa
## 11           5.4         3.7          1.5         0.2     setosa
## 12           4.8         3.4          1.6         0.2     setosa
## 13           4.8         3.0          1.4         0.1     setosa
## 14           4.3         3.0          1.1         0.1     setosa
## 15           5.8         4.0          1.2         0.2     setosa
## 16           5.7         4.4          1.5         0.4     setosa
## 17           5.4         3.9          1.3         0.4     setosa
## 18           5.1         3.5          1.4         0.3     setosa
## 19           5.7         3.8          1.7         0.3     setosa
## 20           5.1         3.8          1.5         0.3     setosa
## 21           5.4         3.4          1.7         0.2     setosa
## 22           5.1         3.7          1.5         0.4     setosa
## 23           4.6         3.6          1.0         0.2     setosa
## 24           5.1         3.3          1.7         0.5     setosa
## 25           4.8         3.4          1.9         0.2     setosa
## 26           5.0         3.0          1.6         0.2     setosa
## 27           5.0         3.4          1.6         0.4     setosa
## 28           5.2         3.5          1.5         0.2     setosa
## 29           5.2         3.4          1.4         0.2     setosa
## 30           4.7         3.2          1.6         0.2     setosa
## 31           4.8         3.1          1.6         0.2     setosa
## 32           5.4         3.4          1.5         0.4     setosa
## 33           5.2         4.1          1.5         0.1     setosa
## 34           5.5         4.2          1.4         0.2     setosa
## 35           4.9         3.1          1.5         0.2     setosa
## 36           5.0         3.2          1.2         0.2     setosa
## 37           5.5         3.5          1.3         0.2     setosa
## 38           4.9         3.6          1.4         0.1     setosa
## 39           4.4         3.0          1.3         0.2     setosa
## 40           5.1         3.4          1.5         0.2     setosa
## 41           5.0         3.5          1.3         0.3     setosa
## 42           4.5         2.3          1.3         0.3     setosa
## 43           4.4         3.2          1.3         0.2     setosa
## 44           5.0         3.5          1.6         0.6     setosa
## 45           5.1         3.8          1.9         0.4     setosa
## 46           4.8         3.0          1.4         0.3     setosa
## 47           5.1         3.8          1.6         0.2     setosa
## 48           4.6         3.2          1.4         0.2     setosa
## 49           5.3         3.7          1.5         0.2     setosa
## 50           5.0         3.3          1.4         0.2     setosa
## 51           7.0         3.2          4.7         1.4 versicolor
## 52           6.4         3.2          4.5         1.5 versicolor
## 53           6.9         3.1          4.9         1.5 versicolor
## 54           5.5         2.3          4.0         1.3 versicolor
## 55           6.5         2.8          4.6         1.5 versicolor
## 56           5.7         2.8          4.5         1.3 versicolor
## 57           6.3         3.3          4.7         1.6 versicolor
## 58           4.9         2.4          3.3         1.0 versicolor
## 59           6.6         2.9          4.6         1.3 versicolor
## 60           5.2         2.7          3.9         1.4 versicolor
## 61           5.0         2.0          3.5         1.0 versicolor
## 62           5.9         3.0          4.2         1.5 versicolor
## 63           6.0         2.2          4.0         1.0 versicolor
## 64           6.1         2.9          4.7         1.4 versicolor
## 65           5.6         2.9          3.6         1.3 versicolor
## 66           6.7         3.1          4.4         1.4 versicolor
## 67           5.6         3.0          4.5         1.5 versicolor
## 68           5.8         2.7          4.1         1.0 versicolor
## 69           6.2         2.2          4.5         1.5 versicolor
## 70           5.6         2.5          3.9         1.1 versicolor
## 71           5.9         3.2          4.8         1.8 versicolor
## 72           6.1         2.8          4.0         1.3 versicolor
## 73           6.3         2.5          4.9         1.5 versicolor
## 74           6.1         2.8          4.7         1.2 versicolor
## 75           6.4         2.9          4.3         1.3 versicolor
## 76           6.6         3.0          4.4         1.4 versicolor
## 77           6.8         2.8          4.8         1.4 versicolor
## 78           6.7         3.0          5.0         1.7 versicolor
## 79           6.0         2.9          4.5         1.5 versicolor
## 80           5.7         2.6          3.5         1.0 versicolor
## 81           5.5         2.4          3.8         1.1 versicolor
## 82           5.5         2.4          3.7         1.0 versicolor
## 83           5.8         2.7          3.9         1.2 versicolor
## 84           6.0         2.7          5.1         1.6 versicolor
## 85           5.4         3.0          4.5         1.5 versicolor
## 86           6.0         3.4          4.5         1.6 versicolor
## 87           6.7         3.1          4.7         1.5 versicolor
## 88           6.3         2.3          4.4         1.3 versicolor
## 89           5.6         3.0          4.1         1.3 versicolor
## 90           5.5         2.5          4.0         1.3 versicolor
## 91           5.5         2.6          4.4         1.2 versicolor
## 92           6.1         3.0          4.6         1.4 versicolor
## 93           5.8         2.6          4.0         1.2 versicolor
## 94           5.0         2.3          3.3         1.0 versicolor
## 95           5.6         2.7          4.2         1.3 versicolor
## 96           5.7         3.0          4.2         1.2 versicolor
## 97           5.7         2.9          4.2         1.3 versicolor
## 98           6.2         2.9          4.3         1.3 versicolor
## 99           5.1         2.5          3.0         1.1 versicolor
## 100          5.7         2.8          4.1         1.3 versicolor
## 101          6.3         3.3          6.0         2.5  virginica
## 102          5.8         2.7          5.1         1.9  virginica
## 103          7.1         3.0          5.9         2.1  virginica
## 104          6.3         2.9          5.6         1.8  virginica
## 105          6.5         3.0          5.8         2.2  virginica
## 106          7.6         3.0          6.6         2.1  virginica
## 107          4.9         2.5          4.5         1.7  virginica
## 108          7.3         2.9          6.3         1.8  virginica
## 109          6.7         2.5          5.8         1.8  virginica
## 110          7.2         3.6          6.1         2.5  virginica
## 111          6.5         3.2          5.1         2.0  virginica
## 112          6.4         2.7          5.3         1.9  virginica
## 113          6.8         3.0          5.5         2.1  virginica
## 114          5.7         2.5          5.0         2.0  virginica
## 115          5.8         2.8          5.1         2.4  virginica
## 116          6.4         3.2          5.3         2.3  virginica
## 117          6.5         3.0          5.5         1.8  virginica
## 118          7.7         3.8          6.7         2.2  virginica
## 119          7.7         2.6          6.9         2.3  virginica
## 120          6.0         2.2          5.0         1.5  virginica
## 121          6.9         3.2          5.7         2.3  virginica
## 122          5.6         2.8          4.9         2.0  virginica
## 123          7.7         2.8          6.7         2.0  virginica
## 124          6.3         2.7          4.9         1.8  virginica
## 125          6.7         3.3          5.7         2.1  virginica
## 126          7.2         3.2          6.0         1.8  virginica
## 127          6.2         2.8          4.8         1.8  virginica
## 128          6.1         3.0          4.9         1.8  virginica
## 129          6.4         2.8          5.6         2.1  virginica
## 130          7.2         3.0          5.8         1.6  virginica
## 131          7.4         2.8          6.1         1.9  virginica
## 132          7.9         3.8          6.4         2.0  virginica
## 133          6.4         2.8          5.6         2.2  virginica
## 134          6.3         2.8          5.1         1.5  virginica
## 135          6.1         2.6          5.6         1.4  virginica
## 136          7.7         3.0          6.1         2.3  virginica
## 137          6.3         3.4          5.6         2.4  virginica
## 138          6.4         3.1          5.5         1.8  virginica
## 139          6.0         3.0          4.8         1.8  virginica
## 140          6.9         3.1          5.4         2.1  virginica
## 141          6.7         3.1          5.6         2.4  virginica
## 142          6.9         3.1          5.1         2.3  virginica
## 143          5.8         2.7          5.1         1.9  virginica
## 144          6.8         3.2          5.9         2.3  virginica
## 145          6.7         3.3          5.7         2.5  virginica
## 146          6.7         3.0          5.2         2.3  virginica
## 147          6.3         2.5          5.0         1.9  virginica
## 148          6.5         3.0          5.2         2.0  virginica
## 149          6.2         3.4          5.4         2.3  virginica
## 150          5.9         3.0          5.1         1.8  virginica
# ? setNames
# C?mo cambiar los nombres de las columnas de mi.ris
setNames(mi.iris, c("long.sep", "ancho.sep", "long.pet", "ancho.pet", "especie"))
##     long.sep ancho.sep long.pet ancho.pet    especie
## 1        5.1       3.5      1.4       0.2     setosa
## 2        4.9       3.0      1.4       0.2     setosa
## 3        4.7       3.2      1.3       0.2     setosa
## 4        4.6       3.1      1.5       0.2     setosa
## 5        5.0       3.6      1.4       0.2     setosa
## 6        5.4       3.9      1.7       0.4     setosa
## 7        4.6       3.4      1.4       0.3     setosa
## 8        5.0       3.4      1.5       0.2     setosa
## 9        4.4       2.9      1.4       0.2     setosa
## 10       4.9       3.1      1.5       0.1     setosa
## 11       5.4       3.7      1.5       0.2     setosa
## 12       4.8       3.4      1.6       0.2     setosa
## 13       4.8       3.0      1.4       0.1     setosa
## 14       4.3       3.0      1.1       0.1     setosa
## 15       5.8       4.0      1.2       0.2     setosa
## 16       5.7       4.4      1.5       0.4     setosa
## 17       5.4       3.9      1.3       0.4     setosa
## 18       5.1       3.5      1.4       0.3     setosa
## 19       5.7       3.8      1.7       0.3     setosa
## 20       5.1       3.8      1.5       0.3     setosa
## 21       5.4       3.4      1.7       0.2     setosa
## 22       5.1       3.7      1.5       0.4     setosa
## 23       4.6       3.6      1.0       0.2     setosa
## 24       5.1       3.3      1.7       0.5     setosa
## 25       4.8       3.4      1.9       0.2     setosa
## 26       5.0       3.0      1.6       0.2     setosa
## 27       5.0       3.4      1.6       0.4     setosa
## 28       5.2       3.5      1.5       0.2     setosa
## 29       5.2       3.4      1.4       0.2     setosa
## 30       4.7       3.2      1.6       0.2     setosa
## 31       4.8       3.1      1.6       0.2     setosa
## 32       5.4       3.4      1.5       0.4     setosa
## 33       5.2       4.1      1.5       0.1     setosa
## 34       5.5       4.2      1.4       0.2     setosa
## 35       4.9       3.1      1.5       0.2     setosa
## 36       5.0       3.2      1.2       0.2     setosa
## 37       5.5       3.5      1.3       0.2     setosa
## 38       4.9       3.6      1.4       0.1     setosa
## 39       4.4       3.0      1.3       0.2     setosa
## 40       5.1       3.4      1.5       0.2     setosa
## 41       5.0       3.5      1.3       0.3     setosa
## 42       4.5       2.3      1.3       0.3     setosa
## 43       4.4       3.2      1.3       0.2     setosa
## 44       5.0       3.5      1.6       0.6     setosa
## 45       5.1       3.8      1.9       0.4     setosa
## 46       4.8       3.0      1.4       0.3     setosa
## 47       5.1       3.8      1.6       0.2     setosa
## 48       4.6       3.2      1.4       0.2     setosa
## 49       5.3       3.7      1.5       0.2     setosa
## 50       5.0       3.3      1.4       0.2     setosa
## 51       7.0       3.2      4.7       1.4 versicolor
## 52       6.4       3.2      4.5       1.5 versicolor
## 53       6.9       3.1      4.9       1.5 versicolor
## 54       5.5       2.3      4.0       1.3 versicolor
## 55       6.5       2.8      4.6       1.5 versicolor
## 56       5.7       2.8      4.5       1.3 versicolor
## 57       6.3       3.3      4.7       1.6 versicolor
## 58       4.9       2.4      3.3       1.0 versicolor
## 59       6.6       2.9      4.6       1.3 versicolor
## 60       5.2       2.7      3.9       1.4 versicolor
## 61       5.0       2.0      3.5       1.0 versicolor
## 62       5.9       3.0      4.2       1.5 versicolor
## 63       6.0       2.2      4.0       1.0 versicolor
## 64       6.1       2.9      4.7       1.4 versicolor
## 65       5.6       2.9      3.6       1.3 versicolor
## 66       6.7       3.1      4.4       1.4 versicolor
## 67       5.6       3.0      4.5       1.5 versicolor
## 68       5.8       2.7      4.1       1.0 versicolor
## 69       6.2       2.2      4.5       1.5 versicolor
## 70       5.6       2.5      3.9       1.1 versicolor
## 71       5.9       3.2      4.8       1.8 versicolor
## 72       6.1       2.8      4.0       1.3 versicolor
## 73       6.3       2.5      4.9       1.5 versicolor
## 74       6.1       2.8      4.7       1.2 versicolor
## 75       6.4       2.9      4.3       1.3 versicolor
## 76       6.6       3.0      4.4       1.4 versicolor
## 77       6.8       2.8      4.8       1.4 versicolor
## 78       6.7       3.0      5.0       1.7 versicolor
## 79       6.0       2.9      4.5       1.5 versicolor
## 80       5.7       2.6      3.5       1.0 versicolor
## 81       5.5       2.4      3.8       1.1 versicolor
## 82       5.5       2.4      3.7       1.0 versicolor
## 83       5.8       2.7      3.9       1.2 versicolor
## 84       6.0       2.7      5.1       1.6 versicolor
## 85       5.4       3.0      4.5       1.5 versicolor
## 86       6.0       3.4      4.5       1.6 versicolor
## 87       6.7       3.1      4.7       1.5 versicolor
## 88       6.3       2.3      4.4       1.3 versicolor
## 89       5.6       3.0      4.1       1.3 versicolor
## 90       5.5       2.5      4.0       1.3 versicolor
## 91       5.5       2.6      4.4       1.2 versicolor
## 92       6.1       3.0      4.6       1.4 versicolor
## 93       5.8       2.6      4.0       1.2 versicolor
## 94       5.0       2.3      3.3       1.0 versicolor
## 95       5.6       2.7      4.2       1.3 versicolor
## 96       5.7       3.0      4.2       1.2 versicolor
## 97       5.7       2.9      4.2       1.3 versicolor
## 98       6.2       2.9      4.3       1.3 versicolor
## 99       5.1       2.5      3.0       1.1 versicolor
## 100      5.7       2.8      4.1       1.3 versicolor
## 101      6.3       3.3      6.0       2.5  virginica
## 102      5.8       2.7      5.1       1.9  virginica
## 103      7.1       3.0      5.9       2.1  virginica
## 104      6.3       2.9      5.6       1.8  virginica
## 105      6.5       3.0      5.8       2.2  virginica
## 106      7.6       3.0      6.6       2.1  virginica
## 107      4.9       2.5      4.5       1.7  virginica
## 108      7.3       2.9      6.3       1.8  virginica
## 109      6.7       2.5      5.8       1.8  virginica
## 110      7.2       3.6      6.1       2.5  virginica
## 111      6.5       3.2      5.1       2.0  virginica
## 112      6.4       2.7      5.3       1.9  virginica
## 113      6.8       3.0      5.5       2.1  virginica
## 114      5.7       2.5      5.0       2.0  virginica
## 115      5.8       2.8      5.1       2.4  virginica
## 116      6.4       3.2      5.3       2.3  virginica
## 117      6.5       3.0      5.5       1.8  virginica
## 118      7.7       3.8      6.7       2.2  virginica
## 119      7.7       2.6      6.9       2.3  virginica
## 120      6.0       2.2      5.0       1.5  virginica
## 121      6.9       3.2      5.7       2.3  virginica
## 122      5.6       2.8      4.9       2.0  virginica
## 123      7.7       2.8      6.7       2.0  virginica
## 124      6.3       2.7      4.9       1.8  virginica
## 125      6.7       3.3      5.7       2.1  virginica
## 126      7.2       3.2      6.0       1.8  virginica
## 127      6.2       2.8      4.8       1.8  virginica
## 128      6.1       3.0      4.9       1.8  virginica
## 129      6.4       2.8      5.6       2.1  virginica
## 130      7.2       3.0      5.8       1.6  virginica
## 131      7.4       2.8      6.1       1.9  virginica
## 132      7.9       3.8      6.4       2.0  virginica
## 133      6.4       2.8      5.6       2.2  virginica
## 134      6.3       2.8      5.1       1.5  virginica
## 135      6.1       2.6      5.6       1.4  virginica
## 136      7.7       3.0      6.1       2.3  virginica
## 137      6.3       3.4      5.6       2.4  virginica
## 138      6.4       3.1      5.5       1.8  virginica
## 139      6.0       3.0      4.8       1.8  virginica
## 140      6.9       3.1      5.4       2.1  virginica
## 141      6.7       3.1      5.6       2.4  virginica
## 142      6.9       3.1      5.1       2.3  virginica
## 143      5.8       2.7      5.1       1.9  virginica
## 144      6.8       3.2      5.9       2.3  virginica
## 145      6.7       3.3      5.7       2.5  virginica
## 146      6.7       3.0      5.2       2.3  virginica
## 147      6.3       2.5      5.0       1.9  virginica
## 148      6.5       3.0      5.2       2.0  virginica
## 149      6.2       3.4      5.4       2.3  virginica
## 150      5.9       3.0      5.1       1.8  virginica
mi.iris
##     Sepal.Length Sepal.Width Petal.Length Petal.Width    Especie
## 1            5.1         3.5          1.4         0.2     setosa
## 2            4.9         3.0          1.4         0.2     setosa
## 3            4.7         3.2          1.3         0.2     setosa
## 4            4.6         3.1          1.5         0.2     setosa
## 5            5.0         3.6          1.4         0.2     setosa
## 6            5.4         3.9          1.7         0.4     setosa
## 7            4.6         3.4          1.4         0.3     setosa
## 8            5.0         3.4          1.5         0.2     setosa
## 9            4.4         2.9          1.4         0.2     setosa
## 10           4.9         3.1          1.5         0.1     setosa
## 11           5.4         3.7          1.5         0.2     setosa
## 12           4.8         3.4          1.6         0.2     setosa
## 13           4.8         3.0          1.4         0.1     setosa
## 14           4.3         3.0          1.1         0.1     setosa
## 15           5.8         4.0          1.2         0.2     setosa
## 16           5.7         4.4          1.5         0.4     setosa
## 17           5.4         3.9          1.3         0.4     setosa
## 18           5.1         3.5          1.4         0.3     setosa
## 19           5.7         3.8          1.7         0.3     setosa
## 20           5.1         3.8          1.5         0.3     setosa
## 21           5.4         3.4          1.7         0.2     setosa
## 22           5.1         3.7          1.5         0.4     setosa
## 23           4.6         3.6          1.0         0.2     setosa
## 24           5.1         3.3          1.7         0.5     setosa
## 25           4.8         3.4          1.9         0.2     setosa
## 26           5.0         3.0          1.6         0.2     setosa
## 27           5.0         3.4          1.6         0.4     setosa
## 28           5.2         3.5          1.5         0.2     setosa
## 29           5.2         3.4          1.4         0.2     setosa
## 30           4.7         3.2          1.6         0.2     setosa
## 31           4.8         3.1          1.6         0.2     setosa
## 32           5.4         3.4          1.5         0.4     setosa
## 33           5.2         4.1          1.5         0.1     setosa
## 34           5.5         4.2          1.4         0.2     setosa
## 35           4.9         3.1          1.5         0.2     setosa
## 36           5.0         3.2          1.2         0.2     setosa
## 37           5.5         3.5          1.3         0.2     setosa
## 38           4.9         3.6          1.4         0.1     setosa
## 39           4.4         3.0          1.3         0.2     setosa
## 40           5.1         3.4          1.5         0.2     setosa
## 41           5.0         3.5          1.3         0.3     setosa
## 42           4.5         2.3          1.3         0.3     setosa
## 43           4.4         3.2          1.3         0.2     setosa
## 44           5.0         3.5          1.6         0.6     setosa
## 45           5.1         3.8          1.9         0.4     setosa
## 46           4.8         3.0          1.4         0.3     setosa
## 47           5.1         3.8          1.6         0.2     setosa
## 48           4.6         3.2          1.4         0.2     setosa
## 49           5.3         3.7          1.5         0.2     setosa
## 50           5.0         3.3          1.4         0.2     setosa
## 51           7.0         3.2          4.7         1.4 versicolor
## 52           6.4         3.2          4.5         1.5 versicolor
## 53           6.9         3.1          4.9         1.5 versicolor
## 54           5.5         2.3          4.0         1.3 versicolor
## 55           6.5         2.8          4.6         1.5 versicolor
## 56           5.7         2.8          4.5         1.3 versicolor
## 57           6.3         3.3          4.7         1.6 versicolor
## 58           4.9         2.4          3.3         1.0 versicolor
## 59           6.6         2.9          4.6         1.3 versicolor
## 60           5.2         2.7          3.9         1.4 versicolor
## 61           5.0         2.0          3.5         1.0 versicolor
## 62           5.9         3.0          4.2         1.5 versicolor
## 63           6.0         2.2          4.0         1.0 versicolor
## 64           6.1         2.9          4.7         1.4 versicolor
## 65           5.6         2.9          3.6         1.3 versicolor
## 66           6.7         3.1          4.4         1.4 versicolor
## 67           5.6         3.0          4.5         1.5 versicolor
## 68           5.8         2.7          4.1         1.0 versicolor
## 69           6.2         2.2          4.5         1.5 versicolor
## 70           5.6         2.5          3.9         1.1 versicolor
## 71           5.9         3.2          4.8         1.8 versicolor
## 72           6.1         2.8          4.0         1.3 versicolor
## 73           6.3         2.5          4.9         1.5 versicolor
## 74           6.1         2.8          4.7         1.2 versicolor
## 75           6.4         2.9          4.3         1.3 versicolor
## 76           6.6         3.0          4.4         1.4 versicolor
## 77           6.8         2.8          4.8         1.4 versicolor
## 78           6.7         3.0          5.0         1.7 versicolor
## 79           6.0         2.9          4.5         1.5 versicolor
## 80           5.7         2.6          3.5         1.0 versicolor
## 81           5.5         2.4          3.8         1.1 versicolor
## 82           5.5         2.4          3.7         1.0 versicolor
## 83           5.8         2.7          3.9         1.2 versicolor
## 84           6.0         2.7          5.1         1.6 versicolor
## 85           5.4         3.0          4.5         1.5 versicolor
## 86           6.0         3.4          4.5         1.6 versicolor
## 87           6.7         3.1          4.7         1.5 versicolor
## 88           6.3         2.3          4.4         1.3 versicolor
## 89           5.6         3.0          4.1         1.3 versicolor
## 90           5.5         2.5          4.0         1.3 versicolor
## 91           5.5         2.6          4.4         1.2 versicolor
## 92           6.1         3.0          4.6         1.4 versicolor
## 93           5.8         2.6          4.0         1.2 versicolor
## 94           5.0         2.3          3.3         1.0 versicolor
## 95           5.6         2.7          4.2         1.3 versicolor
## 96           5.7         3.0          4.2         1.2 versicolor
## 97           5.7         2.9          4.2         1.3 versicolor
## 98           6.2         2.9          4.3         1.3 versicolor
## 99           5.1         2.5          3.0         1.1 versicolor
## 100          5.7         2.8          4.1         1.3 versicolor
## 101          6.3         3.3          6.0         2.5  virginica
## 102          5.8         2.7          5.1         1.9  virginica
## 103          7.1         3.0          5.9         2.1  virginica
## 104          6.3         2.9          5.6         1.8  virginica
## 105          6.5         3.0          5.8         2.2  virginica
## 106          7.6         3.0          6.6         2.1  virginica
## 107          4.9         2.5          4.5         1.7  virginica
## 108          7.3         2.9          6.3         1.8  virginica
## 109          6.7         2.5          5.8         1.8  virginica
## 110          7.2         3.6          6.1         2.5  virginica
## 111          6.5         3.2          5.1         2.0  virginica
## 112          6.4         2.7          5.3         1.9  virginica
## 113          6.8         3.0          5.5         2.1  virginica
## 114          5.7         2.5          5.0         2.0  virginica
## 115          5.8         2.8          5.1         2.4  virginica
## 116          6.4         3.2          5.3         2.3  virginica
## 117          6.5         3.0          5.5         1.8  virginica
## 118          7.7         3.8          6.7         2.2  virginica
## 119          7.7         2.6          6.9         2.3  virginica
## 120          6.0         2.2          5.0         1.5  virginica
## 121          6.9         3.2          5.7         2.3  virginica
## 122          5.6         2.8          4.9         2.0  virginica
## 123          7.7         2.8          6.7         2.0  virginica
## 124          6.3         2.7          4.9         1.8  virginica
## 125          6.7         3.3          5.7         2.1  virginica
## 126          7.2         3.2          6.0         1.8  virginica
## 127          6.2         2.8          4.8         1.8  virginica
## 128          6.1         3.0          4.9         1.8  virginica
## 129          6.4         2.8          5.6         2.1  virginica
## 130          7.2         3.0          5.8         1.6  virginica
## 131          7.4         2.8          6.1         1.9  virginica
## 132          7.9         3.8          6.4         2.0  virginica
## 133          6.4         2.8          5.6         2.2  virginica
## 134          6.3         2.8          5.1         1.5  virginica
## 135          6.1         2.6          5.6         1.4  virginica
## 136          7.7         3.0          6.1         2.3  virginica
## 137          6.3         3.4          5.6         2.4  virginica
## 138          6.4         3.1          5.5         1.8  virginica
## 139          6.0         3.0          4.8         1.8  virginica
## 140          6.9         3.1          5.4         2.1  virginica
## 141          6.7         3.1          5.6         2.4  virginica
## 142          6.9         3.1          5.1         2.3  virginica
## 143          5.8         2.7          5.1         1.9  virginica
## 144          6.8         3.2          5.9         2.3  virginica
## 145          6.7         3.3          5.7         2.5  virginica
## 146          6.7         3.0          5.2         2.3  virginica
## 147          6.3         2.5          5.0         1.9  virginica
## 148          6.5         3.0          5.2         2.0  virginica
## 149          6.2         3.4          5.4         2.3  virginica
## 150          5.9         3.0          5.1         1.8  virginica

Accediendo a elementos de un vector por su nombre

v = c(45,43,56,48,51)
v
## [1] 45 43 56 48 51
names(v) <- c("Lun","Mar","Mie","Jue","Vie")
v
## Lun Mar Mie Jue Vie 
##  45  43  56  48  51
v["Mar"]
## Mar 
##  43
v[2:3]
## Mar Mie 
##  43  56
# v[c("Mie", "Jue")]  # Error, cuidado
# v["Mie":"Jue"]      # Error, cuidado, mejor utilizar indices numéricos

Ordenación de un vector

x <- c(4, 5, 3, 2, 1, 2)
sort(x) # ordena los elementos del vector
## [1] 1 2 2 3 4 5

Opeeraciones matemáticas con vectores

x <- 1:10
x
##  [1]  1  2  3  4  5  6  7  8  9 10
2 * x
##  [1]  2  4  6  8 10 12 14 16 18 20
2 * x + 1
##  [1]  3  5  7  9 11 13 15 17 19 21
x ^ 2
##  [1]   1   4   9  16  25  36  49  64  81 100
x * x
##  [1]   1   4   9  16  25  36  49  64  81 100

Sumar dos vectores

v1 <- c(5,1,5)
v2 <- c(2,1,3)
v1 == v2   # Preguntar si hay elementos iguales
## [1] FALSE  TRUE FALSE
v1 + v2
## [1] 7 2 8

Sumando vectores

# Otro ejemplo
d <- c(2,4)
e <- c(1,3,5,7)
d+e
## [1]  3  7  7 11

Algunas funciones con vectores

  • Algo
  • length()
  • min(), max(), sum()
  • mean()
  • median()
  • sort()
  • unique()
  • which(), which.max(), which.min()
  • plot()

Operaciones con el conjunto de datos cars

# data()

mis.carros <- cars

mis.carros
##    speed dist
## 1      4    2
## 2      4   10
## 3      7    4
## 4      7   22
## 5      8   16
## 6      9   10
## 7     10   18
## 8     10   26
## 9     10   34
## 10    11   17
## 11    11   28
## 12    12   14
## 13    12   20
## 14    12   24
## 15    12   28
## 16    13   26
## 17    13   34
## 18    13   34
## 19    13   46
## 20    14   26
## 21    14   36
## 22    14   60
## 23    14   80
## 24    15   20
## 25    15   26
## 26    15   54
## 27    16   32
## 28    16   40
## 29    17   32
## 30    17   40
## 31    17   50
## 32    18   42
## 33    18   56
## 34    18   76
## 35    18   84
## 36    19   36
## 37    19   46
## 38    19   68
## 39    20   32
## 40    20   48
## 41    20   52
## 42    20   56
## 43    20   64
## 44    22   66
## 45    23   54
## 46    24   70
## 47    24   92
## 48    24   93
## 49    24  120
## 50    25   85
# Cambiarle los nombres de columnas a mis.carros
# Crear vectores de algunas columnas de mi.carros
# sacar mean, max, min, media de algunas columnas de mi.carros
# sacar frecuencia mediante table de datos tipo character de mi.carros


mis.carros <- mtcars
names(mis.carros)   # Los nombres de las columnas
##  [1] "mpg"  "cyl"  "disp" "hp"   "drat" "wt"   "qsec" "vs"   "am"   "gear"
## [11] "carb"
row.names(mis.carros)  # Nombre de los registros 
##  [1] "Mazda RX4"           "Mazda RX4 Wag"       "Datsun 710"         
##  [4] "Hornet 4 Drive"      "Hornet Sportabout"   "Valiant"            
##  [7] "Duster 360"          "Merc 240D"           "Merc 230"           
## [10] "Merc 280"            "Merc 280C"           "Merc 450SE"         
## [13] "Merc 450SL"          "Merc 450SLC"         "Cadillac Fleetwood" 
## [16] "Lincoln Continental" "Chrysler Imperial"   "Fiat 128"           
## [19] "Honda Civic"         "Toyota Corolla"      "Toyota Corona"      
## [22] "Dodge Challenger"    "AMC Javelin"         "Camaro Z28"         
## [25] "Pontiac Firebird"    "Fiat X1-9"           "Porsche 914-2"      
## [28] "Lotus Europa"        "Ford Pantera L"      "Ferrari Dino"       
## [31] "Maserati Bora"       "Volvo 142E"
which(row.names(mis.carros) == 'Honda Civic')   # Seleccionar
## [1] 19
# cpmo seleccionar registros directamente de un data frame, mas adelante ejercicios
mis.carros$mpg[which(row.names(mis.carros) == 'Honda Civic')]
## [1] 30.4
# creando un vector a partir de un data.frame (tabla)

nombres.carros <- row.names(mis.carros)
nombres
## [1] "Hugo"  "Paco"  "Luis"  "Paty"  "Norma"
vmpg <- mis.carros$mpg
vmpg
##  [1] 21.0 21.0 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 17.8 16.4 17.3 15.2
## [15] 10.4 10.4 14.7 32.4 30.4 33.9 21.5 15.5 15.2 13.3 19.2 27.3 26.0 30.4
## [29] 15.8 19.7 15.0 21.4
mean(vmpg)
## [1] 20.09062
max(vmpg)
## [1] 33.9
min(vmpg)
## [1] 10.4
# cuál de los carros (mis.carros), tiene mayor millas por galón 

# mis.carros[renglon, ]  # Todas las columnas
mis.carros[which(mis.carros$mpg == max(mis.carros$mpg)), ]  # que significa la ,
##                 mpg cyl disp hp drat    wt qsec vs am gear carb
## Toyota Corolla 33.9   4 71.1 65 4.22 1.835 19.9  1  1    4    1
# ¿cuáles son carros con mas velocidades al frente
# Cuáles son los carros con mayor HP
# Cuáles son los carros con mayor y menor Cyl
# Del conjunto de datos cual es la media de alguna variable de estudio
# Data.frames

Documentación de mtcars

  • [, 1] mpg Miles/(US) gallon
  • [, 2] cyl Number of cylinders
  • [, 3] disp Displacement (cu.in.)
  • [, 4] hp Gross horsepower
  • [, 5] drat Rear axle ratio
  • [, 6] wt Weight (1000 lbs)
  • [, 7] qsec 1/4 mile time
  • [, 8] vs Engine (0 = V-shaped, 1 = straight)
  • [, 9] am Transmission (0 = automatic, 1 = manual)
  • [,10] gear Number of forward gears
  • [,11] carb Number of carburetors