Isso pode ajudá-lo a perceber que o eixo vertical é medido como uma densidade de probabilidade . Portanto, se o eixo horizontal é medido em km, o eixo vertical é medido como uma densidade de probabilidade "por km". Suponha que desenhemos um elemento retangular em uma grade com 5 "km" de largura e 0,1 "por km" de altura (que você pode preferir escrever como "km - 1 "). A área desse retângulo é de 5 km x 0,1 km - 1 = 0,5. As unidades cancelam e ficamos com apenas uma probabilidade de metade.- 1- 1
Se você alterou as unidades horizontais para "metros", teria que alterar as unidades verticais para "por metro". O retângulo agora teria 5000 metros de largura e teria uma densidade (altura) de 0,0001 por metro. Você ainda tem uma probabilidade de metade. Você pode ficar perturbado com a aparência esquisita desses dois gráficos na página em comparação um com o outro (um não precisa ser muito maior e mais curto que o outro?), Mas quando você está desenhando fisicamente os gráficos, pode usar escala que você gosta. Olhe abaixo para ver como pouca estranheza precisa estar envolvida.
Você pode considerar útil considerar histogramas antes de passar para as curvas de densidade de probabilidade. De muitas maneiras, eles são análogos. O eixo vertical de um histograma é a densidade de frequência [por unidade]x e as áreas representam frequências, novamente porque as unidades horizontais e verticais se cancelam após a multiplicação. A curva PDF é uma espécie de versão contínua de um histograma, com frequência total igual a uma.
Uma analogia ainda mais próxima é um histograma de frequência relativa - dizemos que esse histograma foi "normalizado", de modo que os elementos de área agora representam proporções do seu conjunto de dados original em vez de frequências brutas, e a área total de todas as barras é uma. As alturas agora são densidades de frequência relativa [por unidade]x . Se um histograma de frequência relativa tiver uma barra que percorre xvalores de 20 km a 25 km (portanto, a largura da barra é de 5 km) e tem uma densidade de frequência relativa de 0,1 por km, então essa barra contém uma proporção de 0,5 dos dados. Isso corresponde exatamente à ideia de que um item escolhido aleatoriamente no seu conjunto de dados tem 50% de probabilidade de ficar nessa barra. O argumento anterior sobre o efeito das mudanças nas unidades ainda se aplica: compare as proporções de dados situados na barra de 20 km a 25 km com a da barra de 20.000 a 25.000 metros para essas duas parcelas. Você também pode confirmar aritmeticamente que as áreas de todas as barras somam uma em ambos os casos.
O que eu poderia dizer com minha afirmação de que o PDF é uma "espécie de versão contínua de um histograma"? Vamos pegar uma pequena faixa sob uma curva de densidade de probabilidade, ao longo dos valores de no intervalo [ x , x + δ x ] , para que a faixa tenha δ x de largura e a altura da curva seja aproximadamente constante f ( x ) . Podemos desenhar uma barra dessa altura, cuja área f ( x )x[x,x+δx]δxf( X ) representa a probabilidade aproximada de estar nessa faixa.f( X )δx
Como podemos encontrar a área sob a curva entre e x = b ? Poderíamos subdividir esse intervalo em pequenas tiras e obter a soma das áreas das barras, ∑ f ( x )x = ax = b , que corresponderia à probabilidade aproximada de permanecer no intervalo [ a , b ] . Vemos que a curva e as barras não se alinham com precisão, portanto há um erro em nossa aproximação. Fazendo δ x cada vez menor para cada barra, preenchemos o intervalo com mais e barras mais estreitas, cujo ∑ f ( x )∑ f( X )δx[ a , b ]δx fornece uma estimativa melhor da área.∑ f( X )δx
Para calcular a área com precisão, em vez de assumir que era constante em cada faixa, avaliamos a integral ∫ b a f ( x ) d x , e isso corresponde à probabilidade real de permanecer no intervalo [ a , b ] . A integração em toda a curva fornece uma área total (ou seja, probabilidade total), pela mesma razão que a soma das áreas de todas as barras de um histograma de frequência relativa fornece uma área total (ou seja, proporção total) de uma. A integração é em si uma espécie de versão contínua da soma de uma soma.f( X )∫bumaf( x ) dx[ a , b ]
Código R para parcelas
require(ggplot2)
require(scales)
require(gridExtra)
# Code for the PDF plots with bars underneath could be easily readapted
# Relative frequency histograms
x.df <- data.frame(km=c(rep(12.5, 1), rep(17.5, 2), rep(22.5, 5), rep(27.5, 2)))
x.df$metres <- x.df$km * 1000
km.plot <- ggplot(x.df, aes(x=km, y=..density..)) +
stat_bin(origin=10, binwidth=5, fill="steelblue", colour="black") +
xlab("Distance in km") + ylab("Relative frequency density per km") +
scale_y_continuous(minor_breaks = seq(0, 0.1, by=0.005))
metres.plot <- ggplot(x.df, aes(x=metres, y=..density..)) +
stat_bin(origin=10000, binwidth=5000, fill="steelblue", colour="black") +
xlab("Distance in metres") + ylab("Relative frequency density per metre") +
scale_x_continuous(labels = comma) +
scale_y_continuous(minor_breaks = seq(0, 0.0001, by=0.000005), labels=comma)
grid.arrange(km.plot, metres.plot, ncol=2)
x11()
# Probability density functions
x.df <- data.frame(x=seq(0, 1, by=0.001))
cutoffs <- seq(0.2, 0.5, by=0.1) # for bars
barHeights <- c(0, dbeta(cutoffs[1:(length(cutoffs)-1)], 2, 2), 0) # uses left of bar
x.df$pdf <- dbeta(x.df$x, 2, 2)
x.df$bar <- findInterval(x.df$x, cutoffs) + 1 # start at 1, first plotted bar is 2
x.df$barHeight <- barHeights[x.df$bar]
x.df$lastBar <- ifelse(x.df$bar == max(x.df$bar)-1, 1, 0) # last plotted bar only
x.df$lastBarHeight <- ifelse(x.df$lastBar == 1, x.df$barHeight, 0)
x.df$integral <- ifelse(x.df$bar %in% 2:(max(x.df$bar)-1), 1, 0) # all plotted bars
x.df$integralHeight <- ifelse(x.df$integral == 1, x.df$pdf, 0)
cutoffsNarrow <- seq(0.2, 0.5, by=0.025) # for the narrow bars
barHeightsNarrow <- c(0, dbeta(cutoffsNarrow[1:(length(cutoffsNarrow)-1)], 2, 2), 0) # uses left of bar
x.df$barNarrow <- findInterval(x.df$x, cutoffsNarrow) + 1 # start at 1, first plotted bar is 2
x.df$barHeightNarrow <- barHeightsNarrow[x.df$barNarrow]
pdf.plot <- ggplot(x.df, aes(x=x, y=pdf)) +
geom_area(fill="lightsteelblue", colour="black", size=.8) +
ylab("probability density") +
theme(panel.grid = element_blank(),
axis.text.x = element_text(colour="black", size=16))
pdf.lastBar.plot <- pdf.plot +
scale_x_continuous(breaks=tail(cutoffs, 2), labels=expression(x, x+delta*x)) +
geom_area(aes(x=x, y=lastBarHeight, group=lastBar), fill="steelblue", colour="black", size=.8) +
annotate("text", x=0.73, y=0.22, size=6, label=paste("P(paste(x<=X)<=x+delta*x)%~~%f(x)*delta*x"), parse=TRUE)
pdf.bars.plot <- pdf.plot +
scale_x_continuous(breaks=cutoffs[c(1, length(cutoffs))], labels=c("a", "b")) +
geom_area(aes(x=x, y=barHeight, group=bar), fill="steelblue", colour="black", size=.8) +
annotate("text", x=0.73, y=0.22, size=6, label=paste("P(paste(a<=X)<=b)%~~%sum(f(x)*delta*x)"), parse=TRUE)
pdf.barsNarrow.plot <- pdf.plot +
scale_x_continuous(breaks=cutoffsNarrow[c(1, length(cutoffsNarrow))], labels=c("a", "b")) +
geom_area(aes(x=x, y=barHeightNarrow, group=barNarrow), fill="steelblue", colour="black", size=.8) +
annotate("text", x=0.73, y=0.22, size=6, label=paste("P(paste(a<=X)<=b)%~~%sum(f(x)*delta*x)"), parse=TRUE)
pdf.integral.plot <- pdf.plot +
scale_x_continuous(breaks=cutoffs[c(1, length(cutoffs))], labels=c("a", "b")) +
geom_area(aes(x=x, y=integralHeight, group=integral), fill="steelblue", colour="black", size=.8) +
annotate("text", x=0.73, y=0.22, size=6, label=paste("P(paste(a<=X)<=b)==integral(f(x)*dx,a,b)"), parse=TRUE)
grid.arrange(pdf.lastBar.plot, pdf.bars.plot, pdf.barsNarrow.plot, pdf.integral.plot, ncol=2)