En este artículo, vamos a filtrar las filas del marco de datos en el lenguaje de programación R usando el paquete Dplyr.
Trama de datos en uso:
Método 1: crear subconjuntos o filtrar una fila usando filter()
Para filtrar o crear subconjuntos de filas vamos a utilizar la función filter().
Sintaxis :
filtro (marco de datos, condición)
Aquí, el marco de datos es el marco de datos de entrada y la condición se usa para filtrar los datos en el marco de datos
Ejemplo: programa R para filtrar el marco de datos
R
# load the package library(dplyr) # create the dataframe with three columns # id , department and salary with 8 rows data=data.frame(id=c(7058,7059,7060,7089,7072,7078,7093,7034), department=c('IT','sales','finance','IT','finance', 'sales','HR','HR'), salary=c(34500.00,560890.78,67000.78,25000.00, 78900.00,25000.00,45000.00,90000)) #display actual dataframe print(data) print("==========================") #filter dataframe with department is sales print(filter(data,department=="sales"))
Producción:
Método 2: filtrar el marco de datos con múltiples condiciones
Vamos a utilizar la función de filtro para filtrar las filas. Aquí tenemos que especificar la condición en la función de filtro.
Sintaxis:
filter(marco de datos, condition1 condition2,. condition n)
Aquí, el marco de datos es el marco de datos de entrada y las condiciones se usan para filtrar los datos en el marco de datos
Ejemplo: programa R para filtrar varias filas
R
# load the package library(dplyr) # create the dataframe with three columns # id , department and salary with 8 rows data=data.frame(id=c(7058,7059,7060,7089,7072,7078,7093,7034), department=c('IT','sales','finance','IT','finance', 'sales','HR','HR'), salary=c(34500.00,560890.78,67000.78,25000.00, 78900.00,25000.00,45000.00,90000)) # display actual dataframe print(data) print("==========================") # filter dataframe with department is sales and # salary is greater than 27000 print(filter(data,department=="sales" & salary >27000))
Producción:
Ejemplo: Filtrar filas por operador OR
R
# load the package library(dplyr) # create the dataframe with three columns # id , department and salary with 8 rows data=data.frame(id=c(7058,7059,7060,7089,7072,7078,7093,7034), department=c('IT','sales','finance','IT','finance', 'sales','HR','HR'), salary=c(34500.00,560890.78,67000.78,25000.00, 78900.00,25000.00,45000.00,90000)) # display actual dataframe print(data) print("==========================") # filter dataframe with department is IT or salary # is greater than 27000 print(filter(data,department=="IT" | salary >27000))
Producción:
Ejemplo: Programa R para filtrar usando y, o
R
# load the package library(dplyr) # create the dataframe with three columns # id , department and salary with 8 rows data=data.frame(id=c(7058,7059,7060,7089,7072,7078,7093,7034), department=c('IT','sales','finance','IT','finance', 'sales','HR','HR'), salary=c(34500.00,560890.78,67000.78,25000.00, 78900.00,25000.00,45000.00,90000)) # display actual dataframe print(data) print("==========================") # filter dataframe with department is sales # and salary is greater than 27000 or salary # less than 5000 print(filter(data,department=="sales" & salary >27000 | salary<5000))
Producción:
Método 3: Usar la función slice_head()
Esta función se usa para obtener las primeras n filas del marco de datos.
Sintaxis :
trama de datos %>% slice_head(n)
donde, marco de datos es el marco de datos de entrada, %>% es el operador (operador de tubería) que carga el marco de datos y n es el número de filas que se mostrarán.
Ejemplo: programa R que usó slice_head() para filtrar filas
R
# load the package library(dplyr) # create the dataframe with three columns # id , department and salary with 8 rows data=data.frame(id=c(7058,7059,7060,7089,7072,7078,7093,7034), department=c('IT','sales','finance','IT','finance', 'sales','HR','HR'), salary=c(34500.00,560890.78,67000.78,25000.00, 78900.00,25000.00,45000.00,90000)) # display actual dataframe print(data) print("==========================") # display top 3 values with slice_head data %>% slice_head(n=3) print("==========================") # display top 5 values with slice_head data %>% slice_head(n=5) print("==========================") # display top 1 value with slice_head data %>% slice_head(n=1)
Producción:
Método 4: Usar la función slice_tail()
Esta función se usa para obtener las últimas n filas del marco de datos
Sintaxis :
trama de datos %>% slice_tail(n)
Donde, el marco de datos es el marco de datos de entrada, %>% es el operador (operador de tubería) que carga el marco de datos y n es el número de filas que se mostrarán desde el último
Ejemplo: programa R para filtrar las últimas filas usando el método slice_tail()
R
# load the package library(dplyr) # create the dataframe with three columns # id , department and salary with 8 rows data=data.frame(id=c(7058,7059,7060,7089,7072,7078,7093,7034), department=c('IT','sales','finance','IT','finance', 'sales','HR','HR'), salary=c(34500.00,560890.78,67000.78,25000.00, 78900.00,25000.00,45000.00,90000)) # display actual dataframe print(data) print("==========================") # display last 3 values with slice_tail data %>% slice_tail(n=3) print("==========================") # display last 5 values with slice_tail data %>% slice_tail(n=5) print("==========================") # display last 1 value with slice_tail data %>% slice_tail(n=1)
Producción:
Método 5: Usar la función top_n()
Esta función se utiliza para obtener las primeras n filas.
Sintaxis :
datos %>% top_n(n=5)
Ejemplo: programa R que filtra filas usando la función top_n()
R
# load the package library(dplyr) # create the dataframe with three columns # id , department and salary with 8 rows data=data.frame(id=c(7058,7059,7060,7089,7072,7078,7093,7034), department=c('IT','sales','finance','IT','finance', 'sales','HR','HR'), salary=c(34500.00,560890.78,67000.78,25000.00,78900.00, 25000.00,45000.00,90000)) # display actual dataframe print(data) print("==========================") # display last 3 values with top_n data %>% top_n(n=3) print("==========================") # display last 5 values with top_n data %>% top_n(n=5) print("==========================") # display last 1 value with top_n data %>% top_n(n=1)
Producción:
Método 6: Usar la función slice_sample()
Aquí, vamos a filtrar filas usando la función slice_sample(), esto devolverá una muestra de n filas al azar
Sintaxis :
rebanada_muestra(n)
Ejemplo: programa R para filtrar filas usando la función slice_sample()
R
# load the package library(dplyr) # create the dataframe with three columns # id , department and salary with 8 rows data=data.frame(id=c(7058,7059,7060,7089,7072,7078,7093,7034), department=c('IT','sales','finance','IT','finance', 'sales','HR','HR'), salary=c(34500.00,560890.78,67000.78,25000.00, 78900.00,25000.00,45000.00,90000)) # display actual dataframe print(data) print("==========================") # display last 3 values with slice_sample data %>% slice_sample(n=3) print("==========================") # display last 5 values with slice_sample data %>% slice_sample(n=5) print("==========================") # display last 1 value with slice_sample data %>% slice_sample(n=1)
Producción:
Método 7: Usar la función slice_max()
Esta función devuelve el máximo de n filas del marco de datos basado en una columna
Sintaxis:
trama de datos %>% slice_max(columna, n )
Donde el marco de datos es el marco de datos de entrada, la columna es la columna del marco de datos donde se devuelven las filas máximas en función de esta columna y n es el número máximo de filas que se devolverán
Ejemplo: programa R para filtrar usando la función slice_max()
R
# load the package library(dplyr) # create the dataframe with three columns # id , department and salary with 8 rows data=data.frame(id=c(7058,7059,7060,7089,7072,7078,7093,7034), department=c('IT','sales','finance','IT','finance', 'sales','HR','HR'), salary=c(34500.00,560890.78,67000.78,25000.00, 78900.00,25000.00,45000.00,90000)) # display actual dataframe print(data) print("==========================") # return top 3 maximum rows based on salary # column in the dataframe print(data %>% slice_max(salary, n = 3)) print("==========================") # return top 5 maximum rows based on department # column in the dataframe print(data %>% slice_max(department, n = 5)) print("==========================")
Producción:
Método 8: Usar la función slice_min()
Esta función devuelve el mínimo de n filas del marco de datos basado en una columna
Sintaxis:
trama de datos %>% slice_min(columna, n )
Donde el marco de datos es el marco de datos de entrada, la columna es la columna del marco de datos donde se devuelven las filas máximas en función de esta columna y n es el número mínimo de filas que se devolverán
Ejemplo: programa R para filtrar usando slice_min()
R
# load the package library(dplyr) # create the dataframe with three columns # id , department and salary with 8 rows data=data.frame(id=c(7058,7059,7060,7089,7072,7078,7093,7034), department=c('IT','sales','finance','IT','finance', 'sales','HR','HR'), salary=c(34500.00,560890.78,67000.78,25000.00, 78900.00,25000.00,45000.00,90000)) # display actual dataframe print(data) print("==========================") # return top 3 minimum rows based on salary # column in the dataframe print(data %>% slice_min(salary, n = 3)) print("==========================") # return top 5 minimum rows based on department # column in the dataframe print(data %>% slice_min(department, n = 5)) print("==========================")
Producción:
Método 9: Usar la función sample_frac()
La función sample_frac() selecciona un porcentaje aleatorio de filas de un marco de datos (o tabla). El primer parámetro contiene el nombre del marco de datos, el segundo parámetro indica qué porcentaje de filas seleccionar
Sintaxis:
(muestra_frac(marco de datos, n)
Donde dataframe es el dataframe de entrada y n es el valor de la fracción
Ejemplo: programa R para filtrar datos usando la función sample_frac()
R
# load the package library(dplyr) # create the dataframe with three columns # id , department and salary with 8 rows data=data.frame(id=c(7058,7059,7060,7089,7072,7078,7093,7034), department=c('IT','sales','finance','IT','finance', 'sales','HR','HR'), salary=c(34500.00,560890.78,67000.78,25000.00, 78900.00,25000.00,45000.00,90000)) # display actual dataframe print(data) print("==========================") # return 2 rows print(sample_frac(data,0.2)) print("==========================") # return 4 rows print(sample_frac(data,0.4)) print("==========================") # return 7 rows print(sample_frac(data,0.7)) print("==========================")
Producción:
Publicación traducida automáticamente
Artículo escrito por sravankumar8128 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA