Convierta DataFrame a Matrix con nombres de columna en R

Los marcos de datos y las arrays son objetos R, los cuales permiten el almacenamiento tabular de los datos en celdas bien organizadas. Sin embargo, los datos en un marco de datos pueden consistir en diferentes tipos de datos, es decir, las celdas pueden contener datos que pertenecen a una combinación de tipos de datos. Las arrays, por otro lado, permiten estrictamente que un valor de tipo de datos singular se almacene en todos sus elementos de datos. Estos son interconvertibles entre sí, si cumplen las siguientes condiciones: 

  • El marco de datos no debe tener NA ni valores faltantes.
  • El tipo de datos almacenado en todas las columnas debe ser del mismo tipo, ya sea numérico o de tipo carácter.

El método data.matrix() en el lenguaje de programación R utilizado para convertir un marco de datos en una array numérica. Todas las variables contenidas en un marco de datos se traducen a los modos numéricos correspondientes seguido de su enlace para formar columnas de una array. Sin embargo, los valores de los caracteres no se conservan y se convierten en valores enteros equivalentes para preservar la uniformidad del tipo de datos de la array. Los nombres de las columnas se conservan durante la interconversión. 

Sintaxis: data.matrix(marco de datos, nombres de fila.force = NA)

Parámetros: 

  • marco de datos: el marco de datos para convertir en una array
  • rownames.force: determinación lógica si la array resultante debe tener nombres de fila de caracteres (en lugar de NULL).

Ejemplo 1:

R

# declaring a data frame in R
data_frame = data.frame(C1= c(5:8), C2 = c("ab","b","C","d"))
  
print("Original data frame")
print(data_frame)
  
# converting the data frame into matrix 
mat = data.matrix(data_frame)
  
print ("matrix of the above data frame")
print (mat)

Producción:

[1] “Marco de datos original”

 C1 C2

1 5 ab

2 6b

3 7C

4 8 días

[1] «array del marco de datos anterior»

    C1 C2

[1,] 5 1

[2,] 6 2

[3,] 7 3

[4,] 8 4

Sin embargo, hay una excepción a esta transformación, es decir, en caso de que los datos proporcionados como entrada sean completamente numéricos, incluidos números enteros y decimales de punto flotante, los mismos datos se devuelven como salida sin ninguna interconversión. 

Ejemplo 2:

R

# declaring a data frame in R
data_frame = data.frame(C1= c(5:8),C2 = c(1.2,6,5.7,0.5))
  
print("Original data frame")
print(data_frame)
  
# converting the data frame into matrix 
mat = data.matrix(data_frame)
  
print ("matrix of the above data frame")
print (mat)

Producción:

[1] “Marco de datos original”

 C1 C2

1 5 1.2

2 6 6.0

3 7 5.7

4 8 0.5

[1] «array del marco de datos anterior»

    C1 C2

[1,] 5 1.2

[2,] 6 6,0

[3,] 7 5.7

[4,] 8 0.5

El tipo de datos booleano, VERDADERO se devuelve como 1 en forma de array y FALSO como 0. 

Ejemplo 3:

R

# declaring a data frame in R
data_frame = data.frame(C1= c(5:7),C2 = c(1,6,TRUE),
                        C3=c(FALSE,TRUE,FALSE))
  
print("Original data frame")
print(data_frame)
  
# converting the data frame into matrix 
mat = data.matrix(data_frame)
  
print ("matrix of the above data frame")
print (mat)

Producción:

[1] “Marco de datos original”

 C1 C2 C3

1 5 1 FALSO

2 6 6 VERDADERO

3 7 1 FALSO

[1] «array del marco de datos anterior»

    C1 C2 C3

[1,] 5 1 0

[2,] 6 6 1

[3,] 7 1 0

Publicación traducida automáticamente

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