-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathscript.R
53 lines (38 loc) · 1.62 KB
/
script.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# Cargar el dataset nottem
data("nottem")
# Inspeccionar la estructura del dataset
print(class(nottem)) # Verifica que es una serie temporal (ts)
print(summary(nottem)) # Resumen estadístico
# Graficar la serie temporal
plot(nottem, main = "Temperaturas Mensuales en Nottingham (1920-1939)",
xlab = "Año", ylab = "Temperatura", col = "blue")
# 2. Exploración y preparación de datos
# Descomponer la serie temporal
decomp <- decompose(nottem)
# Visualizar los componentes (tendencia, estacionalidad y aleatoriedad)
plot(decomp)
# 3. Análisis de estacionariedad
# Graficar la autocorrelación (ACF)
acf(nottem, main = "Función de Autocorrelación (ACF)")
# Graficar la autocorrelación parcial (PACF)
pacf(nottem, main = "Función de Autocorrelación Parcial (PACF)")
# Instalar el paquete tseries si no está instalado
if (!require(tseries)) install.packages("tseries", dependencies = TRUE)
library(tseries)
# Prueba de Dickey-Fuller aumentada
adf_test <- adf.test(nottem)
cat("Resultado de la prueba ADF:\n")
print(adf_test)
# 4. Transformación de la serie (si es necesario)
# Si la serie no es estacionaria, realizar diferenciación
if(adf_test$p.value > 0.05) {
nottem_diff <- diff(nottem)
plot(nottem_diff, main = "Serie Temporal Diferenciada")
# Volver a realizar la prueba ADF en la serie diferenciada
adf_test_diff <- adf.test(nottem_diff)
cat("Resultado de la prueba ADF en la serie diferenciada:\n")
print(adf_test_diff)
}
# 5. Detección de valores atípicos
# Graficar boxplot para detectar posibles outliers
boxplot(nottem, main = "Boxplot de la Serie Temporal de Temperaturas", ylab = "Temperatura")