【发布时间】:2011-10-14 10:00:03
【问题描述】:
如果这很脆弱,请多多包涵,如果我遗漏了什么,请随时提出问题...
我正在尝试根据以下链接进行一些 50 年的极端风计算
http://www.wasp.dk/Products/weng/ExtremeWinds.htm
他们似乎使用了 gumbel 分布,所以我使用包“evir”中的函数 gumbel 来拟合数据的分布,并使用包“evd”中的函数 dgumbel 作为绘图函数。
package("evd")
package("evir")
speeds2 <- data.frame(speed=sample(10:50,1000,rep=TRUE))
gumbel(speeds2$speed)
然后我尝试使用 ggplot2 的 stat_function 来绘制它,就像这样(除了现在我已经为 loc 和 scale 输入了虚拟值。
library(ggplot2)
ggplot(data=speeds2, aes(x=speed)) +
stat_function(fun=dgumbel, args=list(loc=1, scale=0.5))
我收到以下错误:
Error in dgev(x, loc = loc, scale = scale, shape = 0, log = log) :
unused argument(s) (loc = loc, scale = scale, shape = 0, log = log)
我不确定我这样做是否正确。任何指针将不胜感激。
【问题讨论】:
-
你从哪里得到
dgumbel?它不是基于 r 的发行版。即使加载了 VGAM,gumbel() 调用也会引发错误。 -
@DWin 从包
evd中获取dgumbel(参见:tiny.cc/8izrk)。有基础函数吗? -
在 package:evd 的内容中没有
gumbel函数。 -
@DWin gumbel 是包 evir 的一个功能。问题不在于这个函数,因为我实际上是在尝试绘制函数dgumbel,它确实属于包evd,不是吗?
-
如果问题与覆盖
evd函数的evir函数无关,则可能是这样。尝试干净的会话。不要加载 evir (它没有 NAMESPACE 所以你不能使用 ':::' 操作符。然后运行你的情节。你也应该编辑你的问题以表明需要什么库或需要调用。