Lista de marcos de datos en R

Los DataFrames son objetos de datos genéricos de R que se utilizan para almacenar los datos tabulares. Son estructuras de datos bidimensionales y heterogéneas. Sin embargo, una lista en R se compone de elementos, vectores, marcos de datos, variables o listas que pueden pertenecer a diferentes tipos de datos. En este artículo, estudiaremos cómo crear una lista que consta de marcos de datos como sus componentes y cómo acceder, modificar y eliminar estos marcos de datos de las listas. La función list() en R crea una lista de los argumentos especificados. Los marcos de datos especificados como argumentos en esta función pueden tener diferentes longitudes.
Las operaciones que se pueden realizar en una lista de DataFrames son:
 

  • Creación de una lista de marcos de datos
  • Acceder a los componentes de una lista de marcos de datos
  • Modificación de componentes de una lista de Dataframes
  • Concatenación de listas de Dataframes
  • Eliminación de componentes de una lista de Dataframes

Creación de una lista de marcos de datos

Para crear una lista de marcos de datos, usamos la función list() en R y luego pasamos cada uno de los marcos de datos que ha creado como argumentos a la función.
Ejemplo: 
 

Python3

# R program to create list of data frames
 
# Create dataframe
df1 = data.frame(
  y1 = c(1, 2, 3),
  y2 = c(4, 5, 6)
)
 
# Create another dataframe
df2 = data.frame(
  y1 = c(7, 8, 9),
  y2 = c(1, 4, 6)
)
 
# Create list of data frame using list()
listOfDataframe = list(df1, df2)
print(listOfDataframe)

Producción: 
 

  [[1]]
  y1 y2
1  1  4
2  2  5
3  3  6

[[2]]
  y1 y2
1  7  1
2  8  4
3  9  6

Acceder a los componentes de una lista de marcos de datos

Podemos acceder a los componentes de una lista de marcos de datos de dos maneras.
 

  • Acceder a los componentes por nombres: todos los componentes de una lista de marcos de datos se pueden nombrar y podemos usar esos nombres para acceder a los componentes de la lista usando el comando dólar. 
    Ejemplo: 
     

Python3

# R program to access components
# of a list of data frames
 
# Create dataframe
df1 = data.frame(
  y1 = c(1, 2, 3),
  y2 = c(4, 5, 6)
)
 
# Create another dataframe
df2 = data.frame(
  y1 = c(7, 8, 9),
  y2 = c(1, 4, 6)
)
 
# Creating a list of data frames
# by naming all its components
listOfDataframe = list(
  "Dataframe1" = df1,
  "Dataframe2" = df2
)
print(listOfDataframe)
 
# Accessing components by names
cat("Accessing Dataframe2 using $ command\n")
print(listOfDataframe$Dataframe2)
  • Producción: 
     
$Dataframe1
  y1 y2
1  1  4
2  2  5
3  3  6

$Dataframe2
  y1 y2
1  7  1
2  8  4
3  9  6

Accessing Dataframe2 using $ command
  y1 y2
1  7  1
2  8  4
3  9  6
  •  
  • Acceder a componentes por índices: También podemos acceder a los componentes de la lista de tramas de datos mediante índices. Para acceder a los componentes de nivel superior de una lista de marcos de datos, tenemos que usar un operador de doble corte «[[ ]]», que son dos corchetes y si queremos acceder a los componentes de nivel inferior o interno de una lista, tenemos que use otro corchete cuadrado «[ ]» junto con el operador de doble corte «[[ ]]». 
    Ejemplo: 
     

Python3

# R program to access components
# of a list of data frames
 
# Create dataframe
df1 = data.frame(
  y1 = c(1, 2, 3),
  y2 = c(4, 5, 6)
)
 
# Create another dataframe
df2 = data.frame(
  y1 = c(7, 8, 9),
  y2 = c(1, 4, 6)
)
 
# Creating a list of data frames
# by naming all its components
listOfDataframe = list(
  "Dataframe1" = df1,
  "Dataframe2" = df2
)
print(listOfDataframe)
 
# Accessing a top level components by indices
cat("Accessing Dataframe2 using indices\n")
print(listOfDataframe[[2]])
 
# Accessing a inner level components by indices
cat("Accessing second column from Dataframe1 using indices\n")
print(listOfDataframe[[1]][2])
 
# Accessing another inner level components by indices
cat("Accessing 4 from Dataframe2 using indices\n")
# Here [2, 2] represents that I want
# to access element from second row and second column i.e 4 here
print(listOfDataframe[[2]][2, 2])
  • Producción: 
     
$Dataframe1
  y1 y2
1  1  4
2  2  5
3  3  6

$Dataframe2
  y1 y2
1  7  1
2  8  4
3  9  6

Accessing Dataframe2 using indices
  y1 y2
1  7  1
2  8  4
3  9  6

Accessing second column from Dataframe1 using indices
  y2
1  4
2  5
3  6

Accessing 4 from Dataframe2 using indices
[1] 4
  •  

Modificación de componentes de una lista de Dataframes

También se puede modificar una lista de marcos de datos accediendo a los componentes y reemplazándolos con los que desee. 
Ejemplo: 
 

Python3

# R program to modify components
# of a list of data frames
 
# Create dataframe
df1 = data.frame(
  y1 = c(1, 2, 3),
  y2 = c(4, 5, 6)
)
 
# Create another dataframe
df2 = data.frame(
  y1 = c(7, 8, 9),
  y2 = c(1, 4, 6)
)
 
# Creating a list of data frames
# by naming all its components
listOfDataframe = list(
  "Dataframe1" = df1,
  "Dataframe2" = df2
)
cat("Before modifying the list of data frame\n")
print(listOfDataframe)
 
 
# Modifying the dataframe2
listOfDataframe$Dataframe2 = data.frame(
  y1 = c(70, 80, 9),
  y2 = c(14, 41, 63)
)
 
# Modifying second column from Dataframe1
listOfDataframe[[1]][2] = c(23, 45, 67)
 
# Modifying element 2 from dataframe1
listOfDataframe[[1]][2, 1] = 15
 
cat("After modified the list of data frame\n")
print(listOfDataframe)

Producción: 
 

Before modifying the list of data frame
$Dataframe1
  y1 y2
1  1  4
2  2  5
3  3  6

$Dataframe2
  y1 y2
1  7  1
2  8  4
3  9  6

After modified the list of data frame
$Dataframe1
  y1 y2
1  1 23
2 15 45
3  3 67

$Dataframe2
  y1 y2
1 70 14
2 80 41
3  9 63

Concatenación de listas de Dataframes

Se pueden concatenar dos listas de marcos de datos utilizando la función de concatenación. Entonces, cuando queremos concatenar dos listas de marcos de datos, debemos usar el operador de concatenación. 
Sintaxis: 
 

lista = c(lista, lista1)
lista = la lista original del marco de datos 
lista1 = la nueva lista del marco de datos
 

Ejemplo: 
 

Python3

# R program concatenation 
# of lists of data frames
 
# Create dataframe
df1 = data.frame(
  y1 = c(1, 2, 3),
  y2 = c(4, 5, 6)
)
 
# Create another dataframe
df2 = data.frame(
  y1 = c(7, 8, 9),
  y2 = c(1, 4, 6)
)
 
# Creating a list of data frames
# by naming all its components
listOfDataframe = list(
  "Dataframe1" = df1,
  "Dataframe2" = df2
)
cat("Before concatenation of the new list of data frame\n")
print(listOfDataframe)
 
# Creating another one list of data frame
df3 = data.frame(
  y1 = c(7, 8, 98),
  y2 = c(10, 44, 6)
)
newListOfDataframe = list(
  "Dataframe3" = df3
  )
 
# Concatenation of list of data frames
# using concatenation operator
listOfDataframe = c(listOfDataframe, newListOfDataframe)
 
cat("After concatenation of the new list of data frame\n")
print(listOfDataframe)

Producción: 
 

Before concatenation of the new list of data frame
$Dataframe1
  y1 y2
1  1  4
2  2  5
3  3  6

$Dataframe2
  y1 y2
1  7  1
2  8  4
3  9  6

After concatenation of the new list of data frame
$Dataframe1
  y1 y2
1  1  4
2  2  5
3  3  6

$Dataframe2
  y1 y2
1  7  1
2  8  4
3  9  6

$Dataframe3
  y1 y2
1  7 10
2  8 44
3 98  6

Eliminación de componentes de una lista de marcos de datos

Para eliminar componentes de una lista de marcos de datos, en primer lugar, debemos acceder a esos componentes y luego insertar un signo negativo antes de esos componentes. Indica que tuvimos que borrar ese componente. 
Ejemplo: 
 

Python3

# R program to delete components 
# of a list of data frames
 
# Create dataframe
df1 = data.frame(
  y1 = c(1, 2, 3),
  y2 = c(4, 5, 6)
)
 
# Create another dataframe
df2 = data.frame(
  y1 = c(7, 8, 9),
  y2 = c(1, 4, 6)
)
 
# Creating a list of data frames
# by naming all its components
listOfDataframe = list(
  "Dataframe1" = df1,
  "Dataframe2" = df2
)
cat("Before deletion the list is\n")
print(listOfDataframe)
 
# Deleting a top level components
cat("After Deleting Dataframe1\n")
print(listOfDataframe[[-1]])
 
# Deleting a inner level components
cat("After Deleting first column from Dataframe2\n")
print(listOfDataframe[[2]][-1])

Producción: 
 

Before deletion the list is
$Dataframe1
  y1 y2
1  1  4
2  2  5
3  3  6

$Dataframe2
  y1 y2
1  7  1
2  8  4
3  9  6

After Deleting Dataframe1
  y1 y2
1  7  1
2  8  4
3  9  6
After Deleting first column from Dataframe2
  y2
1  1
2  4
3  6

Publicación traducida automáticamente

Artículo escrito por AmiyaRanjanRout 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 *