Difference between revisions of "Beta distributions"

From Organic Design wiki
m (Caretaker: categories)
m
 
(2 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Category:R]]
 
= Beta distributions =
 
 
For details on the beta distribution see [[WikiPedia:Beta distribution]]. The parameters p, and q  
 
For details on the beta distribution see [[WikiPedia:Beta distribution]]. The parameters p, and q  
 
are α & β in the Wikipedia article formula. The x axis range is from 0 to 1, the range for probabilities
 
are α & β in the Wikipedia article formula. The x axis range is from 0 to 1, the range for probabilities
Line 9: Line 7:
 
== R programming language ==
 
== R programming language ==
 
For help on functions which create/manipulate beta distributions see;
 
For help on functions which create/manipulate beta distributions see;
<table class=document-code><tr><td>
+
<R>
 
  ?beta # or help(beta)
 
  ?beta # or help(beta)
 
  ?rbeta # or help(rbeta)
 
  ?rbeta # or help(rbeta)
</table>
+
</R>
 
Usage examples are provided at;
 
Usage examples are provided at;
<table class=document-code><tr><td>
+
<R>
 
  example(beta)
 
  example(beta)
 
  example(rbeta)
 
  example(rbeta)
Line 20: Line 18:
 
  example(pbeta)
 
  example(pbeta)
 
  example(qbeta)
 
  example(qbeta)
</table>
+
</R>
  
 
== R code example 1 ==
 
== R code example 1 ==
Lets generate a beta distribution using the ''rbeta'' built in R function.  
+
 
<table class=document-code><tr><td>
+
Let's generate a beta distribution using the ''rbeta'' built in R function.  
 +
<R>
 
  quartz()
 
  quartz()
 
  # Alter the parameters
 
  # Alter the parameters
Line 34: Line 33:
 
  breaks <- seq(0,1, length=21)
 
  breaks <- seq(0,1, length=21)
 
  hist(x, breaks=breaks, freq=FALSE, main=paste("p=",p, ", q=", q, sep="")) lines(density(x, adjust=0.4), col="red")
 
  hist(x, breaks=breaks, freq=FALSE, main=paste("p=",p, ", q=", q, sep="")) lines(density(x, adjust=0.4), col="red")
</table>
+
</R>
 
Notice &alpha; and &beta; are less than one, so the plot is U shaped, as described in [[Wikipedia:Beta distribution#Shapes|Wikipedia:Beta distribution#Shapes]].
 
Notice &alpha; and &beta; are less than one, so the plot is U shaped, as described in [[Wikipedia:Beta distribution#Shapes|Wikipedia:Beta distribution#Shapes]].
  
 
== Symmetry of &alpha; &Beta; ==
 
== Symmetry of &alpha; &Beta; ==
 
==R code example 2==
 
==R code example 2==
<table class=document-code><tr><td>
+
<R>
 
  quartz()
 
  quartz()
 
  # Alter the parameters
 
  # Alter the parameters
Line 51: Line 50:
 
  Sys.sleep(1)
 
  Sys.sleep(1)
 
  }
 
  }
</table>
+
</R>>
  
 
== See also ==
 
== See also ==
 
[[BetaDistributions.R]]
 
[[BetaDistributions.R]]
 +
[[Category:R]]

Latest revision as of 20:04, 11 December 2010

For details on the beta distribution see WikiPedia:Beta distribution. The parameters p, and q are α & β in the Wikipedia article formula. The x axis range is from 0 to 1, the range for probabilities

Beta distributions have many shapes depending on the parameters. Their flexibility makes them useful for modelling uniform distributions β(1,1) right through to symmetric or skewed distributions, or even U shaped distributions.

R programming language

For help on functions which create/manipulate beta distributions see; <R>

?beta # or help(beta)
?rbeta # or help(rbeta)

</R> Usage examples are provided at; <R>

example(beta)
example(rbeta)
example(dbeta)
example(pbeta)
example(qbeta)

</R>

R code example 1

Let's generate a beta distribution using the rbeta built in R function. <R>

quartz()
# Alter the parameters
n <- 1000 # Number of observations
p <- 0.1   
q <- 0.1
x <- rbeta(n, shape1= p, shape2=q)
breaks <- seq(0,1, length=21)
hist(x, breaks=breaks, freq=FALSE, main=paste("p=",p, ", q=", q, sep="")) lines(density(x, adjust=0.4), col="red")

</R> Notice α and β are less than one, so the plot is U shaped, as described in Wikipedia:Beta distribution#Shapes.

Symmetry of α Β

R code example 2

<R>

quartz()
# Alter the parameters
n <- 10000 # Number of observations
for(i in 1:50) {
p <- q <- i
x <- rbeta(n, shape1= p, shape2=q)
breaks <- seq(0,1, length=21)
hist(x, breaks=breaks, freq=FALSE, main=paste("p=",p, ", q=", q, sep=""))
lines(density(x, adjust=0.4), col="red")
Sys.sleep(1)
}

</R>>

See also

BetaDistributions.R