3  Vectores

OBS: En R se conocen como “vectores de caracteres” o “character vectores”. Los vectores de caracteres en R se utilizan para almacenar y manipular datos de texto, al igual que las cadenas en Python. Aquí tienes una breve explicación de cómo funcionan los vectores de caracteres en R: 1. **Creación de vectores de caracteres**: Puedes

3.1 Vectores en R

En R, un vector es una estructura de datos fundamental que almacena un conjunto de elementos del mismo tipo. Puedes crear vectores de diferentes formas. Aquí hay algunos ejemplos:

3.1.1 Crear un vector numérico

Puedes crear un vector numérico de la siguiente manera:

# Crear un vector numérico

mi_vector <- c(1, 2, 3, 4, 5)

print(mi_vector)
[1] 1 2 3 4 5

3.1.2 Acceso a los elementos del vector

Para acceder un elemento del vector, usaremos “\[ \]”. En R, el primer elemento es el número 1, el segundo, número 2 y asi los demas elementos.

#Acceder al elemento 1
v2 <- c(3, 4.5, 100, 23, 19.8, 3)
v2[1]
[1] 3
#Acceder al elemento 2
v2 <- c(3, 4.5, 100, 23, 19.8, 3)
v2[2]
[1] 4.5
#Acceder valores desde un punto a otro
v2 <- c(3, 4.5, 100, 23, 19.8, 3)
v2[3:5]
[1] 100.0  23.0  19.8
#Selección de solo 2 índices específicos
v2 <- c(3, 4.5, 100, 23, 19.8, 3)
v2[c(1,3)]
[1]   3 100

Nota: Si queremos descartar elementos del vector, sera usar “\[-x\]”.

#Eliminar el primer elemento
v2 <- c(3, 4.5, 100, 23, 19.8, 3)
v2[-1]
[1]   4.5 100.0  23.0  19.8   3.0
#Acceder valores desde un punto a otro
v2 <- c(3, 4.5, 100, 23, 19.8, 3)
v2[-2:-4]
[1]  3.0 19.8  3.0
#Selección de solo 2 índices específicos
v2 <- c(3, 4.5, 100, 23, 19.8, 3)
v2[-c(2,4)]
[1]   3.0 100.0  19.8   3.0

3.1.3 Algunas funciones extras

v2 <- c(3, 4.5, 100, 23, 19.8, 3)
# Longitud (tamaño) de un vector
length(v2)
[1] 6
# Último elemento del vector
v2[length(v2)]
[1] 3
# Vector en reversa
rev(v2)
[1]   3.0  19.8  23.0 100.0   4.5   3.0
# Elementos únicos del vector
unique(v2)
[1]   3.0   4.5 100.0  23.0  19.8

3.2 Ordenamiento del vector

v3 <- c(20, 4, 100, 31, 57, 3)
# Ordena en orden creciente
sort(v3)
[1]   3   4  20  31  57 100
# Retorna los índices
order(v3)
[1] 6 2 1 4 5 3
# Ordenamiento usando los índices
v3[order(v3)]
[1]   3   4  20  31  57 100
# Índices ordenados del vector
rank(v3)
[1] 3 2 6 4 5 1
# Valor máximo
max(v3)
[1] 100
# Índice del máximo
which.max(v3)
[1] 3
# Máximo usando el índice
v3[which.max(v3)]
[1] 100
# Valor mínimo
min(v3)
[1] 3
# Índice del valor mínimo
which.min(v3)
[1] 6

3.3 Aritmética de vectores

Usamos las opereciones basicas, presentadas en anteriores capítulos, pero con vectores.

***Ejemplos:***

v4 <- c(34, 10, 4, 21, 12)
#Multiplicación
100*v4
[1] 3400 1000  400 2100 1200
#Suma
200+v4
[1] 234 210 204 221 212

Cuando hay 2 vectores, se realiza término a término si tienen igual longitud

v5 <- c(2, 4, 6, 8, 10)

v6 <- c(1, 3, 5, 7, 11)

v5+v6
[1]  3  7 11 15 21
v5-v6
[1]  1  1  1  1 -1
v5*v6
[1]   2  12  30  56 110
v5/v6
[1] 2.0000000 1.3333333 1.2000000 1.1428571 0.9090909
v5**v6
[1]            2           64         7776      2097152 100000000000

[***OBS:***]{.underline} Si no son del mismo tamaño, el más corto se “repite”

v7 <- c(1, 2, 3)
v8 <- c(10, 20, 30, 40, 50)
v9 <- v7+v8
Warning in v7 + v8: longitud de objeto mayor no es múltiplo de la longitud de
uno menor
v9
[1] 11 22 33 41 52