如何将数据框转换为数字矩阵

时间:2019-07-14 14:50:03

标签: r

我有一个同时包含字符和数字的数据框,希望将其转换为数字矩阵(因为我需要从中制作热图)

我已经尝试过data.matrix和as.matrix函数,但是都给出了错误。

数据当前采用这种形式

season     team          average
1           a               45
1           b               32
1           c               15
2           a               43
2           b               45
2           c               34
3           a               45

以此类推

我希望将其转换为此

season       a           b             c
1            45          32            15
2            43          45            34
3            45          ...          ... 

对不起,如果我错误地编辑了问题,那么我对这个平台和R都有些陌生

1 个答案:

答案 0 :(得分:0)

您可以使用spread重塑数据框架:

library(tidyr)

(df2 <- spread(df, key = team, value = average))

  season  a  b  c
1      1 45 32 15
2      2 43 45 34
3      3 45 NA NA

,然后将其转换为矩阵:

as.matrix(df2)