¿Cómo trazar un subconjunto de un marco de datos usando ggplot2 en R?

En este artículo, discutiremos cómo trazar un subconjunto de un marco de datos usando ggplot2 en el lenguaje de programación R.

Trama de datos en uso:

  Años Puntaje InscribirseNo
1 17 70 05
2 18 80 10
3 17 79 15
4 19 75 20
5 18 85 25
6 19 96 30
7 17 90 35
8 19 71 40
9 18 83 45

Para obtener una imagen completa, primero dibujemos un marco de datos completo.

Ejemplo:

R

# Load ggplot2 package
library(ggplot2)
  
# Create Data For plotting
Age <- c("17", "18", "17", "19", "18", "19",
         "17", "19", "18")
  
EnrollNo <- c("05", "10", "15", "20", "25",
              "30", "35", "40", "45")
  
Score <- c("70", "80", "79", "75", "85", "96",
           "90", "71", "83")
  
# Create a DataFrame from Data
data <- data.frame(Age, EnrollNo, Score)
  
# Create a simple Scatter Plot
ggplot(data, aes(Score, EnrollNo)) + 
  geom_point(color = "green", size = 3)

Producción:

Simple Scatter Plot

Diagrama de dispersión simple

Ahora, veremos todos los métodos para crear un R Plot usando un subconjunto de DataFrame uno por uno.

Método 1: usar la función subconjunto() 

Aquí, usamos la función subset() para trazar solo un subconjunto de DataFrame dentro de la función ggplot() en lugar de datos DataFrame. Todas las demás cosas son iguales.

Sintaxis: subconjunto(obj, …)

Parámetros:

  • Se necesita que el objeto de datos se subdivida como su primer parámetro.
  • La función subset() puede tener muchos otros parámetros. solo es necesario tomar obj. aquí solo usamos expresiones lógicas que indican filas como segundo argumento.

Retorno: la función subset() devuelve un subconjunto de DataFrame.

Ejemplo:

R

# Load ggplot2 package
library(ggplot2)
  
# Create Data For plotting
Age <- c("17", "18", "17", "19", "18", "19",
         "17", "19", "18")
  
EnrollNo <- c("05", "10", "15", "20", "25", 
              "30", "35", "40", "45")
  
Score <- c("70", "80", "79", "75", "85", "96",
           "90", "71", "83")
  
  
# Create a DataFrame from Data
data <- data.frame(Age, EnrollNo, Score)
  
# Generate R Scatter Plot only where Age 
# variable has value "18"
ggplot(subset(data, Age %in% "18"), aes(Score, EnrollNo)) + 
  geom_point(color = "green", size = 3)

Producción:

Scatter Plot using only subset of DataFrame by sunset() function

Diagrama de dispersión usando solo un subconjunto de DataFrame mediante la función sunset() 

 

Método 2: uso de corchetes

En este método no estamos usando la función subconjunto(), pero escribimos una expresión lógica para recuperar el subconjunto de DataFrame entre corchetes y lo asignamos a la variable del subconjunto.

Ejemplo:

R

# Load ggplot2 package
library(ggplot2)
  
# Create Data For plotting
Age <- c("17", "18", "17", "19", "18", "19", 
         "17", "19", "18")
  
EnrollNo <- c("05", "10", "15", "20", "25",
              "30", "35", "40", "45")
  
Score <- c("70", "80", "79", "75", "85", "96",
           "90", "71", "83")
  
# Create a DataFrame from Data
data <- data.frame(Age, EnrollNo, Score)
  
# Create a Variable 'data_subset' 
# which has the values equal to 
# "19" values of Age object.
data_subset <- data[data$Age %in% "19", ]
  
# Generate R Scatter Plot only where
# Age variable has value "19"
ggplot(data_subset, aes(Score, EnrollNo)) + 
  geom_point(color = "green", size = 3)

Producción:

Scatter Plot using only subset of DataFrame by Square Brackets

Gráfico de dispersión usando solo un subconjunto de DataFrame por corchetes 

Método 3: Usar corchetes dentro de la función ggplot()

En este método, usamos corchetes para escribir la expresión para el subconjunto de DataFrame, pero lo usamos dentro de la función ggplot() en lugar del objeto de marco de datos. 

Ejemplo

R

# Load ggplot2 package
library(ggplot2)
  
# Create Data For plotting
Age <- c("17", "18", "17", "19", "18", "19",
         "17", "19", "18")
  
EnrollNo <- c("05", "10", "15", "20", "25", 
              "30", "35", "40", "45")
  
Score <- c("70", "80", "79", "75", "85", "96", 
           "90", "71", "83")
  
# Create a DataFrame from Data
data <- data.frame(Age, EnrollNo, Score)
  
# Generate R Scatter Plot only where
# Age variable has value "17"
ggplot(data[data$Age %in% "17", ], aes(Score, EnrollNo)) + 
  geom_point(color = "green", size = 3)

Producción: 

Publicación traducida automáticamente

Artículo escrito por erkrutikpatel y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *