Para transformar o argumento principal (data) em um objeto da classe ts:
ts(data = NA, start = 1, end = numeric(), frequency = 1,
deltat = 1, ts.eps = getOption("ts.eps"), class = , names = )
Para calcular estatísticas descritivas da série:
summary(object, ..., digits = max(3, getOption("digits")-3))
Desvio padrão, Assimetria e Curtose:
sd(x, na.rm = FALSE) #Desvio Padrão
skewness(x, na.rm = FALSE, type = 3) # Assimetria
kurtosis(x, na.rm = FALSE, type = 3) # Curtose
# OBS: Desvio Padrao. Se a série possuir valores missing, coloque na.rm=TRUE
Variância, Covariância e Correlação
var(x, y = NULL, na.rm = FALSE, use)
cov(x, y = NULL, use = "everything",
method = c("pearson", "kendall", "spearman"))
cor(x, y = NULL, use = "everything",
method = c("pearson", "kendall", "spearman"))
Para tomar a diferença da série, i.e., cria um novo objeto \(Y_t=X_t-X_{t-1}\):
diff(x, lag = 1, differences = 1, ...)
Quantis observados de X:
quantile(x, ...)
Para imprimir gráficos em um painel com a linhas e b colunas, com a e b inteiros positivos:
par(mfrow=c(a,b))
Gráficos da série:
ts.plot(..., gpars = list()) # Gráfico da Serie
hist(x, ...) # Histograma da Série
Para imprimir o gráfico da distribuição Normal sobre a figura do histograma, faça:
curve(dnorm(x, mean = mean(x), sd=sd(x)),add=T)
O mesmo vale se desejar imprimir a curva de outras distribuições, substibuindo dnorm pela distribuição desejadas e modificando os parâmetros da distribuição de forma conveniente.
Gráfico Quantil-Quantil para distribuição Normal:
qqnorm(y, ylim, main = "Normal Q-Q Plot",
xlab = "Theoretical Quantiles", ylab = "Sample Quantiles",
plot.it = TRUE, datax = FALSE, ...)
Comando para adicionar linha central no QQplot:
qqline(y, datax = FALSE, distribution = qnorm,
probs = c(0.25, 0.75), qtype = 7, ...)
Esta função imprime graficos QQ não necessariamente Normais. Neste exemplo, temos um grafico QQ para um distribuição t com 5 graus de liberdade:
qqplot(y, rt(300, df = 5))
Exemplos de modificações nos gráficos de ACF e PACF:
acf0<-function(x,na.action=na.pass,lags=1:36,...){
#lags:horizonte dos lags
plot(acf(x,na.action=na.action,plot=F)[lags],lwd=5,lend=2,col="darkblue",...)
axis(1, tck = 1, col = "lightgrey", lty = "dotted")
}
name="Série de log-Retornos X"
par(mfrow=c(1,2))
acf0(x, na.action = na.pass,main=paste("ACF:",name))
pacf(x, na.action = na.pass,main=paste("PACF:",name),lwd=5,lend=2,col="darkblue")
Exemplo de saída dos gráficos:
t.test(x, y = NULL,
alternative = c("two.sided", "less", "greater"),
mu = 0, paired = FALSE, var.equal = FALSE,
conf.level = 0.95, ...)
stats):Box.test(x, lag = 1, type = c("Box-Pierce", "Ljung-Box"), fitdf = 0)
FitAR):#LBQPlot(res, lag.max = 30)
### res é a série que temos interesse de realizar os testes
### lag.max é o número de lags que se deseja imprimir o gráfico
library(FitAR)
### Exemplo com 1000 observações geradas de uma normal(0,1)
res<-rnorm(1000, mean=0,sd=1)
LBQPlot(res,15)
#### Utilizando a library `tseries`:
jarque.bera.test(x)
#### Utilizando a library `fBasics`:
ksnormTest(x, title = NULL, description = NULL)
jbTest(x, title = NULL, description = NULL)
shapiroTest(x, title = NULL, description = NULL)
normalTest(x, method = c("sw", "jb"), na.rm = FALSE)
jarqueberaTest(x, title = NULL, description = NULL)
dagoTest(x, title = NULL, description = NULL)
adTest(x, title = NULL, description = NULL)
cvmTest(x, title = NULL, description = NULL)
lillieTest(x, title = NULL, description = NULL)
pchiTest(x, title = NULL, description = NULL)
sfTest(x, title = NULL, description = NULL)
tseries### Testes de Dickey-Fuller
adf.test(x, lags = 1, type = c("nc", "c", "ct"), title = NULL,
description = NULL)
# 'lags' define o número de raízes unitarias a serem testadas
# 'type' Define o tipo de teste a ser realizado:
# 'nc' : Teste de Dickey-Fuller usual (Estatistica Tau)
# 'c' : Teste de Dickey-Fuller Aumentado, com constante (Estatistica Tau_mu)
# 'ct' : Teste de Dickey-Fuller Aumentado, com constante e tendencia (Estatistica Tau_tau)
tseries)pp.test(x, alternative = c("stationary", "explosive"),
type = c("Z(alpha)", "Z(t_alpha)"), lshort = TRUE)
# 'alternative' define a Hipótese alternativa do teste
# 'stationary' : define H1: Phi < 1
# 'explosive' : define H1: Phi > 1
#