【问题标题】:Reading csv table in R在R中读取csv表
【发布时间】:2012-01-18 23:26:02
【问题描述】:

我有一个我试图在 R 中读取的 csv 文件,出于某种原因,R 认为第一行是每一列的标题,这是不正确的。有没有办法解决这个问题。 这是我的命令:

test <- as.matrix(read.csv(file="filetable.csv", sep=",", header=FALSE)) 

我得到了这样的东西

      AATCAGGC   X25070  
 [1,] "ACAAGGCT" " 50687"
 [2,] "ACACGATC" " 47483"
 [3,] "ACACTGAC" " 18339"
 [4,] "ACAGGAGT" " 48550"

第一行应该是数据的一部分

在记事本中打开 filetable.csv 我明白了

AATCAGGC,25070
ACAAGGCT,50687
ACACGATC,47483
ACACTGAC,18339
ACAGGAGT,48550

谢谢

【问题讨论】:

  • 我怀疑您的文件有问题,或者您没有查看 read.csv 调用的结果对象。
  • 所以我只运行 "test
  • 在记事本中打开filetable.csv 并将内容发布到您的问题中。

标签: r csv


【解决方案1】:

这是 header=FALSE 不是 head:http://stat.ethz.ch/R-manual/R-patched/library/utils/html/read.table.html

> tempFile <- tempfile()
> writeLines(c("AATCAGGC,25070",
 "ACAAGGCT,50687",
 "ACACGATC,47483",
 "ACACTGAC,18339",
 "ACAGGAGT,48550"),tempFile,sep="\n")
> readLines(tempFile)
[1] "AATCAGGC,25070" "ACAAGGCT,50687" "ACACGATC,47483" "ACACTGAC,18339" "ACAGGAGT,48550"
> as.matrix(read.csv(tempFile,sep=",",header=FALSE))
     V1         V2     
[1,] "AATCAGGC" "25070"
[2,] "ACAAGGCT" "50687"
[3,] "ACACGATC" "47483"
[4,] "ACACTGAC" "18339"
[5,] "ACAGGAGT" "48550"

【讨论】:

  • 谢谢,但这并不能解决问题,因为 header=FALSE 无论如何都是默认值。我刚刚在问题中对其进行了编辑。
  • 在 read.table 中是不在 read.csv &gt; read.csv function (file, header = TRUE, sep = ",", quote = "\"", dec = ".", fill = TRUE, comment.char = "", ...) read.table(file = file, header = header, sep = sep, quote = quote, dec = dec, fill = fill, comment.char = comment.char, ...) &lt;bytecode: 0x101b1be08&gt; &lt;environment: namespace:utils&gt;
  • 即使你只是复制粘贴我的例子?文件中的换行符可能有些奇怪。但是我想不出任何会导致这种输出的东西。
  • @JulioDiaz:你是在一个干净/新的会话中测试这个吗?您是否在使用某人的 .Rprofile 和/或是否有 .Rprofile.site?
  • @JulioDiaz:您可能必须将值从数字/整数转换为字符串。您可能还需要注意 Windows/*nix 之间的 EOL 差异,但 Java 可能会为您解决这个问题。
猜你喜欢
  • 2015-03-27
  • 1970-01-01
  • 2016-04-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-12
  • 2013-08-28
相关资源
最近更新 更多