【问题标题】:Could not find the "DouglasPeuckerEpsilon" in R language在 R 语言中找不到“DouglasPeuckerEpsilon”
【发布时间】:2017-07-12 21:11:57
【问题描述】:

我正在尝试在 R 中使用 Douglas Peucker 的算法。 通过执行以下代码,我得到以下错误:

Px <- (1:100)/10
Py <- dnorm(Px,3,1)+dnorm(Px,7,1)+Px/10

### Example 1
### Simplification using epsilon

par(mfrow=c(2,2))
plot(Px,Py,type="l")
plot(DouglasPeuckerEpsilon(Px,Py,0.01),type="b",col=4)
Could not find the "DouglasPeuckerEpsilon" in R language.

这是因为我没有安装 DP 包?

【问题讨论】:

  • DouglasPeuckerEpsilon 似乎至少来自 kmlShape 包。安装它,看看它是否适合你。
  • 当我需要一个函数但不知道包(并且它没有安装在我的本地 R 上)时,我会经常 google cran &lt;functionname&gt;。搜索R &lt;functionname&gt; 太难了,但cran 经常提供很好的提示。在这种情况下 (cran DouglasPeuckerEpsilon),kmlShape 就像 Roman 识别的那样位于列表顶部附近。
  • 我安装了包kmlShapeinstall.packages("kmlShape"),然后继续执行语句:plot(DouglasPeuckerEpsilon(Px, Py, 0.04), type = "b", col = 3)。我仍然得到错误:Error in plot(DouglasPeuckerEpsilon (Px, Py, 0.04), type = "b", col = 3); Could not find the "DouglasPeuckerEpsilon"

标签: r simplify douglas-peucker


【解决方案1】:

执行以下步骤:

  1. 安装包 (kmlShape)
  2. 然后加载库(kmlShape)

    install.packages("kmlShape")
    
    library("kmlShape")
    

然后为 Ramer-Douglas-Peucker 算法 (RDP) 运行 plot(DouglasPeuckerEpsilon(Px,Py,0.01),type="b",col=4)

【讨论】:

  • @LizandroLuzonM - 很高兴这对您有所帮助,有时我们倾向于在安装包后跳过包加载步骤,我们想知道代码或包有什么问题:)!...
猜你喜欢
  • 1970-01-01
  • 2018-05-23
  • 1970-01-01
  • 2018-07-12
  • 2017-08-02
  • 2021-08-01
  • 2021-07-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多