【问题标题】:Error reading from csv file in R从 R 中的 csv 文件读取错误
【发布时间】:2012-06-17 23:56:24
【问题描述】:

我有一个这样的 csv 文件:

time,value,duration,time
2011-02-11 03:00:00,3663,3663,0
2011-02-12 03:00:00,3747,3747,0
2011-02-13 03:00:00,467,467,0

这是我的代码:

test1

它说的错误是:

Error in `[.default`(test1, 2, 2) : incorrect number of dimensions

我认为日期后有空格的事实搞砸了,但我不知道如何解决。有人有什么建议吗?

【问题讨论】:

  • 您是否尝试输入“test1”并查看其内容?不确定它是否认为第一个字段真的是两个字段

标签: r csv


【解决方案1】:

如果您的文件确实是 csv,则需要使用 sep=',',这是 read.csv 的默认值。如果您使用sep='',这意味着您将每一行作为单个值读取,因此没有第二列。

您还可以使用str(test1) 来查看您的数据结构。

test1 <- read.csv(path, header=TRUE)

这应该会给你你想要的。

【讨论】:

    【解决方案2】:

    这似乎对我有用:

    test1 <- read.csv(path)[, -1]
    

    该命令只使用read.csv 的默认参数:

    read.csv(file, header = TRUE, sep = ",", quote="\"", dec=".",
             fill = TRUE, comment.char="", ...)
    

    所以,这是我得到的结果:

      value duration time.1
    1  3663     3663      0
    2  3747     3747      0
    3   467      467      0
    

    这似乎是你想要的,对吧?

    那么test[2, 2]等价于test$duration[2]并等于3747。

    【讨论】:

      猜你喜欢
      • 2015-11-26
      • 2018-10-15
      • 2011-04-19
      • 1970-01-01
      • 2016-06-18
      • 2021-10-10
      • 1970-01-01
      • 1970-01-01
      • 2019-04-29
      相关资源
      最近更新 更多