Ruby实现t分发

时间:2012-08-15 02:56:23

标签: ruby statistics

我正在尝试找到t分布的ruby实现,因此我可以绘制具有特定均值,标准偏差和自由度的图形。不完全确定是否有意义,任何帮助都会非常感激。

1 个答案:

答案 0 :(得分:1)

我必须提出DGM关于使用R和Rinruby的评论。 Rinruby很棒,因为你可以直接在ruby中输入R命令:)你只需要确保在使用它之前在你的系统上安装了R。如果你想看到一个T-Distribution正在运行(在安装R和Rinruby gem之后),只需将以下内容粘贴到irb中:

require 'rinruby'

R.eval <<EOF
x <- seq(-4, 4, length=100)
hx <- dnorm(x)

degf <- c(1, 3, 8, 30)
colors <- c("red", "blue", "darkgreen", "gold", "black")
labels <- c("df=1", "df=3", "df=8", "df=30", "normal")

plot(x, hx, type="l", lty=2, xlab="x value",
  ylab="Density", main="Comparison of t Distributions")

for (i in 1:4){
  lines(x, dt(x,degf[i]), lwd=2, col=colors[i])
}

legend("topright", inset=.05, title="Distributions",
  labels, lwd=2, lty=c(1, 1, 1, 1, 2), col=colors)
EOF

希望这可以帮助您入门。我应该注意到我最近不需要进行t分发,所以我无耻地从一些R文档中窃取了R代码。