【问题标题】:Error importing data into R and spatstat将数据导入 R 和 spatstat 时出错
【发布时间】:2013-03-02 01:58:49
【问题描述】:

我正在尝试将文本文件导入 R,特别是 spatstat 包。我已经加载了一个 shp 文件作为窗口并且工作得很好(使用 plot() 显示)。我无法运行 ppp() 命令。运行pp <- ppp(X, Y, window=W)

后我不断收到此错误
Error in ppp(X, Y, window = W) : 
  1 out of 904 coordinate values are NA or NaN

我仔细检查了文件,X 或 Y 坐标都没有任何空白数字甚至负数。

我应该检查什么来处理这个错误?此外,这些数据是公开的,因此如果他们需要查看,我可以将其提供给任何人。

【问题讨论】:

    标签: r spatstat


    【解决方案1】:

    最好检查从文件加载的数据集而不是文件本身。 txt 中可能有很多难以用肉眼捕捉到的棘手内容、空格分隔符而不是制表符、末尾额外的 '\n' 等等。

    试一试

    which(is.nan(X))
    

    看起来只有一个观察结果给您带来了问题。

    【讨论】:

    • 我想你的意思是is.nan。根据错误消息,他们可能也应该检查is.na
    • 如果 X 为无限值,这将不起作用。 any(is.infinite(X)) > 0
    • is.na 工作。第 904 行有一个错误,这就是为什么当有超过 2000 分时它给出 904 中的 1 分。那应该坦率地告诉我。有趣的是,问题在于文本字段中的撇号。非常感谢。
    【解决方案2】:

    我想要这样的:

    ok <- is.finite(X) & is.finite(Y)
    if(!ok){
        X <- X[is.finite(X)]
        Y <- Y[is.finite(Y)]
    }
    pp <- ppp(X, Y, window=W)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-26
      相关资源
      最近更新 更多