Como traçar uma distribuição t em r
Para traçar a função de densidade de probabilidade para a distribuição at em R, podemos usar as seguintes funções:
- dt(x, df) para criar a função de densidade de probabilidade
- curva (função, de = NULL, a = NULL) para traçar a função de densidade de probabilidade
Para traçar a função de densidade de probabilidade, precisamos especificar df (graus de liberdade) na função dt() , bem como os valores de e para na função curve() .
Por exemplo, o código a seguir ilustra como traçar uma função de densidade de probabilidade para uma distribuição com 10 graus de liberdade onde o eixo x do gráfico está entre -4 e 4:
curve(dt(x, df=10), from=-4, to=4)
Semelhante à distribuição normal , a distribuição t é simétrica em torno de uma média de 0.
Podemos adicionar um título, alterar o rótulo do eixo Y, aumentar a largura da linha e até mesmo alterar a cor da linha para tornar o gráfico mais esteticamente agradável:
curve(dt(x, df=10), from=-4, to=4, main = 't Distribution (df = 10)', #add title ylab = 'Density', #change y-axis label lwd = 2, #increase line width to 2 col = 'steelblue') #change line color to steelblue
Também podemos adicionar múltiplas curvas ao gráfico para comparar distribuições t com diferentes graus de liberdade. Por exemplo, o código a seguir cria gráficos de distribuição t com df = 6, df = 10 e df = 30:
curve(dt(x, df=6), from=-4, to=4, col='blue') curve(dt(x, df=10), from=-4, to=4, col='red', add=TRUE) curve(dt(x, df=30), from=-4, to=4, col='green', add=TRUE)
Podemos adicionar uma legenda ao gráfico usando a função legend() , que assume a seguinte sintaxe:
legenda(x, y=NULL, legenda, preenchimento, col, bg, lty, cex)
Ouro:
- x, y: as coordenadas xey usadas para posicionar a legenda
- legenda: o texto a ser colocado na legenda
- fill: preenche a cor dentro da legenda
- col: a lista de cores a serem usadas nas linhas dentro da legenda
- bg: a cor de fundo da legenda
- lty: estilo de linha
- cex: tamanho do texto na legenda
Em nosso exemplo usaremos a seguinte sintaxe para criar uma legenda:
#create density plots curve(dt(x, df=6), from=-4, to=4, col='blue') curve(dt(x, df=10), from=-4, to=4, col='red', add=TRUE) curve(dt(x, df=30), from=-4, to=4, col='green', add=TRUE) #add legend legend(-4, .3, legend=c("df=6", "df=10", "df=30"), col=c("blue", "red", "green"), lty=1, cex=1.2)