fbpx

En esta entrada vamos a estudiar qué son los vectores en R. Así, vamos a:

  • Crear vectores en un script en R,
  • realizar operaciones aritméticas con vectores utilizando RStudio y
  • seleccionar elementos en un vector.

Esta entrada viene acompañada de un video en YouTube que sigue un curso básico de R y RStudio. Además hay un código en R que puedes seguir con el video para poner el práctica los conceptos estudiados.

¿Qué es un vector en R?

Quizás de la escuela recordemos eso que tenía magnitud o modulo, dirección y sentido. Además, las componentes de un vector se guardaban en coordenadas.

Igualmente, esta misma idea se puede usar para vectores en R. Así como vimos que una variable puede almacenar un objeto, un vector puede almacenar varios objetos diferentes en orden.

diferencias entre una variable y un vector en RStudio

Así, en R un vector es un espacio de memoria en la computadora que se usa para guardar información de cualquier cosa.

Ejemplo de vector en R

Tomemos esta clásica saga de películas animadas. Digamos que queremos guardar sus nombres, la puntuación que le da internet y si es posterior al año 2005.

peliculas de shrek

En este caso, podríamos crear un vector para cada una de estas características o atributos de las películas . Para esto, utilizamos variables numéricas, carácter y tipo lógico.

vectores en r vectores numericos vectores texto vectores logicos binarios

Los vectores pueden representar las columnas de una tabla de datos. En este caso, las columnas serían el nombre, la puntuación y si es una película posterior a 2005. Es importante que, en R, cada vector debe tener un solo un tipo de dato.

Cómo crear vectores en R

Si queremos crear vectores en R, utilizamos la función c(). En este caso, la c es de «combinar» (combinar uno o más valores o elementos). Lo más común, es que los vectores sean de tipo numérico, carácter o lógico.

Siguiendo el ejemplo de las películas, podemos escribir sus nombres en un vector llamado… nombre. También, creamos vectores para la puntuación y si es posterior a 2005.

# crear vector carácter con nombre de las películas
nombre <- c("Shrek", "Shrek 2", "Shrek Tercero", "Shrek: Felices por siempre")

# crear vector numérico con puntuación de las películas
puntuacion <- c(7.9, 7.2, 6.1, 6.3)

# crear vector lógico sobre si la película es posterior a 2015
posterior_2005 <- c(FALSE, FALSE, TRUE, TRUE)

Cómo operar vectores en R

Podemos operar vectores contra valores numéricos o contra otros vectores. Las operaciones aritméticas básicas son la suma, la multiplicación, la resta y la división.

En R, supongamos que quiero sumarle dos puntos a todas las películas porque me gusta mucho la saga. Pero digamos que otra persona quiere ponerle la mitad. El código para esto sería:

# sumar 2 a la puntuación
puntuacion + 2

# dividir la puntuación entre 2
puntuacion/2

Por otro lado, si genero mi propia puntuación en un vector, podría ver la diferencia de lo que pienso contra lo que dice internet con una resta de vectores. Como ejercicio puedes hacer tu propia puntuación para hacer pruebas.

# crea la puntuación de rafa
puntuacion_de_rafa <- c(10, 9, 6, 7)

# calcular diferencia entre puntuaciones
puntuacion_de_rafa - puntuacion

Por último, podemos calcular cuántos elementos tiene un vector con la función length, o longitud. Si queremos saber el promedio de las puntuaciones utilizamos la función mean, o media.

# calcular la longitud del vector
length(puntuacion)

# calcular el promedio del vector puntuacion
mean(puntuacion)

Cómo seleccionar vectores en R

En algunos casos, estamos interesados en seleccionar elementos específicos de un vector. Así, podemos seleccionar elementos basados en la posición del elemento, como la tercera, o la primera y la última. Por otro lado, también podemos seleccionar basados en una condición como los que sean mayores a 7.

Digamos que queremos seleccionar el nombre de la tercera película. Luego, queremos escoger la primera y la cuarta película. Por último, seleccionemos todos los nombres menos el de la segunda película.

# seleccionar la tercera película
nombre[3]

# seleccionar la primera y la última película
nombre[c(1, 4)]

# seleccionar todas menos la segunda película
nombre[-2]

Ahora vamos a crear una condición para las películas que tengan una puntuación menor a 7. Las condiciones en este caso van a ser vectores tipo lógico. Luego, seleccionamos las puntuaciones bajas. Por último, pedimos los nombres que tengan puntuaciones bajas.

# crear condición lógica
puntuacion_baja <- puntuacion < 7

# mostrar condición para ver TRUE/FALSE
puntuacion_baja

# mostrar puntuaciones bajas
puntuacion[puntuacion_baja]

# mostrar nombres de películas con puntuaciones bajas
nombre[puntuacion_baja]

Muy bien! hemos terminado.

Espero que sepas un poquito más de R. Si has aprendido algo, te pido por favor que lo compartas con alguien que sepas que quiere aprender R.

Te mando un saludo donde quiera que estes!