如何在 r 中将矩阵转换为数据框(附示例)


您可以使用以下两种方法之一将矩阵转换为 R 中的数据框:

方法1:使用Base R将矩阵转换为数据帧

 #convert matrix to data frame
df <- as. data . frame (mat)

#specify column names
colnames(df) <- c(' first ', ' second ', ' third ', ...)

方法2:使用Tibble包将矩阵转换为数据帧

 library (tibble)

#convert matrix to data frame and specify column names
df <- mat %>%
  as_tibble() %>%
  setNames(c(' first ', ' second ', ' third ', ...))

以下示例展示了如何在 R 中使用以下矩阵来实际使用每种方法:

 #create matrix
mat <- matrix(1:21, nrow= 7 )

#view matrix
mast

     [,1] [,2] [,3]
[1,] 1 8 15
[2,] 2 9 16
[3,] 3 10 17
[4,] 4 11 18
[5,] 5 12 19
[6,] 6 13 20
[7,] 7 14 21

示例 1:使用 Base R 将矩阵转换为数据帧

以下代码展示了如何使用基本 R 将矩阵转换为数据框:

 #convert matrix to data frame
df <- as. data . frame (mat)

#specify columns of data frame
colnames(df) <- c(' first ', ' second ', ' third ')

#view structure of data frame
str(df)

'data.frame': 7 obs. of 3 variables:
 $first: int 1 2 3 4 5 6 7
 $second: int 8 9 10 11 12 13 14
 $third: int 15 16 17 18 19 20 21

从结果中,我们可以看到矩阵已转换为具有 7 个观测值(行)和 3 个变量(列)的数据框。

示例 2:使用 Tibble 包将矩阵转换为数据框

以下代码展示了如何在 R 中将矩阵转换为tibble

 library (tibble)

#convert matrix to tibble
df <- mat %>%
  as_tibble() %>%
  setNames(c(' first ', ' second ', ' third '))

#view tibble
df

# A tibble: 7 x 3
  first second third
     
1 1 8 15
2 2 9 16
3 3 10 17
4 4 11 18
5 5 12 19
6 6 13 20
7 7 14 21

从结果中我们可以看到矩阵已转换为 7 行 3 列的 tibble。

注意:使用 tibbles 代替数据框有很多优点,特别是对于非常大的数据集。 在这里查看一些好处。

其他资源

以下教程解释了如何在 R 中执行其他常见任务:

如何在R中将矩阵转换为向量
如何在 R 中将数据帧转换为矩阵
如何在 R 中将列表转换为矩阵

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注