如何将没有列名的数据框转换为矩阵

5
我想将一个数据框转换为仅包含数字的矩阵。我的目标是:

num [1:3, 1:4] 1 2 3 1 2 3 1 2 3 1 ...

就是这样。
alpha <- beta <- gamma <- delta <- c(1,2,3)
df <- data.frame(alpha, beta, gamma, delta, stringsAsFactors = FALSE)

M1 <- as.matrix(df, ncol = ncol(df))
str(M1)

M2 <- data.matrix(df)
str(M2)

num [1:3, 1:4] 1 2 3 1 2 3 1 2 3 1 ... - attr(*, "dimnames")=List of 2
..$ : NULL
..$ : chr [1:4] "alpha" "beta" "gamma" "delta"

我无论如何都想不出该如何去掉所有属性,只需要将其纯粹的形式作为另一个方法的输入。


4
unname(as.matrix(df)) 的翻译是:取消数据框 df 中所有变量的名称,然后将其转换为矩阵形式。 - thelatemail
1
dimnames(M1) <- NULL. - IRTFM
1个回答

8

@thelatemail 绝对是正确的。

unname(as.matrix(df))

完成任务。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接