如何使用 tidyverse 工具将矩阵读入 R?

How to read a matrix into R using tidyverse tools?

你能帮帮我吗?

我经常需要将 关联矩阵 (AxB) 读入 R 格式为 TXT 文件。它们看起来像这样:

matrix <- matrix(round(runif(50, 0, 100),0), 5, 10)

我通常的解决方案涉及基础的 read.delimas.matrix:

as.matrix(read.delim("matrix.txt", row.names = 1))

文件被读取并转换为matrixclass,因此可以进行适当的分析。

但是,我希望也能够使用 tidyverse 的 read_delim 读取矩阵文件,因此对于大型矩阵或大型矩阵的数量。我试过这个:

as.matrix(read_delim("matrix.txt", delim = "/t"))

但是数据以一种非常奇怪的格式被扰乱,信息丢失了。有没有一种方法可以使用 tidyverse 工具阅读和处理发生率 matrices

谢谢!

在R中,需要使用反斜杠来表示特殊字符和转义字符。

尝试

as.matrix(read_delim("matrix.txt", delim = "\t"))

read_delim 函数没有 row.names 选项,因此您必须转换数据以将行名作为行名(而不是第一列)。您应该在转换为矩阵之前执行此操作。

library(tidyverse)
matrix <- read_delim("matrix.txt", delim = "\t") %>%
  column_to_rownames(first_column) %>%
  as.matrix()

试试这个

as.matrix(read_delim("matrix.txt", delim = "\t", col_names = F))