En este artículo, analicemos la indexación y el corte de los marcos de datos en R.
Indexación del marco de datos
Al indexar el marco de datos, obtendremos los datos de la columna en particular. La indexación se puede realizar especificando el nombre de la columna entre corchetes. La sintaxis para indexar el marco de datos es-
dataframeName[“columnName”]
Ejemplo: en este ejemplo, vamos a crear un marco de datos «estadísticas» que contenga carreras anotadas y wickets tomados por un jugador y realicemos una indexación en el marco de datos para extraer las carreras anotadas por los jugadores.
R
# create a data frame stats <- data.frame(player=c('A', 'B', 'C', 'D'), runs=c(100, 200, 408, NA), wickets=c(17, 20, NA, 5)) print("stats Dataframe") stats # fetch data in certain column stats["runs"]
Producción:
"stats Dataframe" player runs wickets 1 A 100 17 2 B 200 20 3 C 408 NA 4 D NA 5 runs 1 100 2 200 3 408 4 NA
Cortar el marco de datos
Cortar el marco de datos proporciona las filas y columnas requeridas. Esto se puede hacer de tres maneras. Se enumeran a continuación-
- Rebanar con [ , ]
- Rebanar con vectores lógicos.
- Cortar con subconjunto().
Rebanar con [ , ]
Cortar el marco de datos con [ , ] devuelve datos de filas y columnas especificadas. La sintaxis de esto se menciona a continuación:
dataframeName[ fromRow : toRow , columnNumber]
Ejemplo:
En el siguiente código, realizamos un corte en el marco de datos para obtener filas y columnas específicas.
R
# create a data frame stats <- data.frame(player=c('A', 'B', 'C', 'D'), runs=c(100, 200, 408, NA), wickets=c(17, 20, NA, 5)) print("stats Dataframe") stats # fetch 2,3 rows and 1,2 columns stats[2:3,c(1,2)] # fetch 1:3 rows of 1st column cat("players - ") stats[1:3,1]
Producción
"stats Dataframe" player runs wickets 1 A 100 17 2 B 200 20 3 C 408 NA 4 D NA 5 player runs 2 B 200 3 C 408 players - [1] "A" "B" "C"
Rebanar con vectores lógicos
Podemos realizar cortes en los datos especificando las condiciones lógicas. Se utiliza para obtener los datos filtrados.
Ejemplo:
En este ejemplo, buscamos los registros de los jugadores que anotaron más de 100 carreras.
R
# create a data frame stats <- data.frame(player=c('A', 'B', 'C', 'D'), runs=c(100, 200, 408, 23), wickets=c(17, 20, 3, 5)) print("stats Dataframe") stats # fetch player details who scores # more than 100 runs batsmens<-stats[stats$runs>100,] batsmens
Producción
"stats Dataframe" player runs wickets 1 A 100 17 2 B 200 20 3 C 408 3 4 D 23 5 player runs wickets 2 B 200 20 3 C 408 3
Cortar con subconjunto()
Podemos cortar marcos de datos usando el método subset(). El método de subconjunto acepta los datos, la lógica de filtro para dividir y las columnas para obtener. La sintaxis de cortar con subconjunto es:
subconjunto( x = marco de datos, subconjunto = filter_logic, select=c(columnNames))
Ejemplo:
En el siguiente código, buscamos a los jugadores que eligieron más de 5 wickets de las estadísticas del marco de datos cortando el marco de datos usando el método de subconjunto.
R
# create a data frame stats <- data.frame(player=c('A', 'B', 'C', 'D'), runs=c(100, 200, 408, 23), wickets=c(17, 20, 3, 5)) print("stats Dataframe") stats # fetch player details who pick # more than 5 wickets subset(x=stats, subset=wickets>5, select=c(player,wickets))
Producción
"stats Dataframe" player runs wickets 1 A 100 17 2 B 200 20 3 C 408 3 4 D 23 5 player wickets 1 A 17 2 B 20
Publicación traducida automáticamente
Artículo escrito por akhilvasabhaktula03 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA