【问题标题】:Genotype data - How to import using R [closed]基因型数据 - 如何使用 R [关闭]
【发布时间】:2012-11-26 00:54:40
【问题描述】:

我是 stackoverflow 的新成员,我开始使用 R 语言,所以我需要一些帮助!

我有一个包含 740 行和 500 000 列的文件,由制表符分隔,格式为 .txt 。文件大小约为 1.2GB。该文件包含有关牛基因型的信息。我需要将此文件读入 R 程序以使用表型数据执行关联研究分析。我无法在 R 中导入这个大文件。有人知道执行此操作的命令吗?只是一个导入此文件并在 R 中读取的命令?

我的系统:i5 和 6Gb RAM 内存。

【问题讨论】:

  • 这是 R 中一个非常基本的功能。如果您的问题是您认为其他人以前遇到过的问题,您应该首先查看 R 手册/文档和基本的 google 搜索。阅读基本 R 手册cran.r-project.org/doc/manuals/R-intro.pdf 的第 7 章,了解导入数据。如果您在工作一个小时左右后仍有问题,请告诉我们问题所在。

标签: r file import


【解决方案1】:

read.table() 是你需要的。你的文件有标题吗?

在 Linux 上(文件中没有标题): mydata = read.table("/home/username/genotype.txt", header=FALSE)

在 Linux 上(文件中包含标头): mydata = read.table("/home/username/genotype.txt", header=TRUE)

在 Windows 上(文件中没有标题): mydata = read.table("c:\\mydata\\genotype.txt", header=FALSE)

在 Windows 上(带有文件头): mydata = read.table("c:\\mydata\\genotype.txt", header=TRUE)

read.table() 默认使用制表符作为分隔符,但您可以指定参数 sep=","(或 sep="|" 等)来指定不同的分隔符。

【讨论】:

  • 谢谢回复,但是read.table命令可以导入大文件??
  • 取决于“大”的含义。我用它来读取包含 500,000 - 800,000 行和 100 多列的文件,其中包含数字和文本数据。也取决于您的硬件和操作系统。
【解决方案2】:

在 R 中,您可以键入 ?read.csv?read.table,这将为您提供这些函数的帮助文件。

然后您可以将此函数的输出分配给一个变量,该变量将是您的数据框。

例如:

  myDataFrame <- read.csv("path/to/file.txt", sep="\t")

【讨论】:

    【解决方案3】:

    其他答案解决了将数据读入 R 的一般问题,但您的数据属于特定类型; CRANBioconductor 以及 in the wild 上有一些出色的“特定于域”的软件包。这些包将有自己的输入这些数据的方式,可能是从您当前的表示形式转换而来的,但可能会在有效处理和执行常见操作方面具有显着优势。更好地追求这些,同时学习如何使用 R 的一般特性。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-12-23
      • 1970-01-01
      • 2015-10-05
      • 2023-03-20
      • 1970-01-01
      • 2022-01-15
      • 2021-02-16
      • 2020-05-28
      相关资源
      最近更新 更多