微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用tidyverse工具将矩阵读取到R中?

如何解决如何使用tidyverse工具将矩阵读取到R中?

能帮我吗?

我经常需要将发病率矩阵(AxB)读入R格式为 TXT 文件中。他们看起来像这样:

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

我通常的解决方案涉及base的read.delimas.matrix

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

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

但是,我希望也可以使用 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))

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。