¿Cómo asignar nombres de columna según la fila existente en R DataFrame?

En este artículo, discutiremos cómo asignar nombres de columna o encabezados a un marco de datos basado en filas en el lenguaje de programación R.

Método 1: Usar el método as.character()

El método unlist() en R se usa para simular la conversión de una lista a vector. Simplifica producir un vector conservando todos los componentes. Cada elemento es igual a cada uno de los valores en esa fila correspondiente. El método as.character() luego se aplica sucesivamente sobre esta lista, para separar cada uno de sus elementos individualmente. El as.character intenta forzar su argumento al tipo de carácter. Por lo tanto, la fila existente se asigna como encabezado del marco de datos. La fila correspondiente se puede eliminar o conservar en el marco de datos. 

Sintaxis:

deslistar (listar)

Ejemplo:

R

# creating a data frame
data_frame = data.frame(col1=c(1,2,3,-4),
                        col2=c(8,9,5,10),
                        col3=c(0,2,3,5))
  
# printing original data frame
print("Original Data Frame")
print (data_frame)
  
# second row of the data frame is 
# assigned as the column name
colnames(data_frame) <- as.character(unlist(data_frame[2,]))
  
# second row is then deleted from 
# the data frame
data_frame = data_frame[-2, ]
  
print("Modified Data Frame")
print(data_frame)

Producción

[1] "Original Data Frame"
 col1 col2 col3
1    1    8    0
2    2    9    2
3    3    5    3
4   -4   10    5
[1] "Modified Data Frame"
  2  9 2
1  1  8 0
3  3  5 3
4 -4 10 5

Método 2: Usar el método lapply()

La función lapply() en R, devuelve una lista de la misma longitud que un objeto de lista de entrada, cada elemento del cual es el resultado de la aplicación de FUN a cada uno de los elementos correspondientes de la lista sobre la que se aplica. 

Sintaxis: lapply(X, DIVERTIDO, …)

Parámetro: 

  • X – El marco de datos o array
  • DIVERSIÓN: cualquier función en R se puede especificar como el segundo argumento donde se pueden usar funciones integradas y definidas por el usuario.

Si usamos as.character como FUN, entonces las variables del marco de datos, todas las variables del marco de datos se convertirán a la clase «carácter». El encabezado o los nombres de columna se pueden asignar a una fila particular del marco de datos. 

Ejemplo

R

# creating a data frame
data_frame = data.frame(col1=c(1,-2,3,-4),
                        col2=c(8,9,5,10),
                        col3=c(0,2,3,5),
                        col4=c(1.5,4.5,6.7,8.9))
  
# printing original data frame
print("Original Data Frame")
print (data_frame)
  
# apply row4 as the header
data_frame[] <- lapply(data_frame, as.character)
colnames(data_frame) <- data_frame[4, ]
  
print("Modified Data Frame")
print(data_frame)

Producción

[1] "Original Data Frame"
 col1 col2 col3 col4
1    1    8    0  1.5
2   -2    9    2  4.5
3    3    5    3  6.7
4   -4   10    5  8.9
[1] "Modified Data Frame"
 -4 10 5 8.9
1  1  8 0 1.5
2 -2  9 2 4.5
3  3  5 3 6.7
4 -4 10 5 8.9

Publicación traducida automáticamente

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