¿Cómo representar el uso de kWh por año frente a la temperatura promedio?

9

Solo por diversión, quiero registrar mi consumo mensual de energía doméstica año tras año. Sin embargo, deseo incluir alguna referencia a la temperatura mensual para poder determinar si mi hogar o comportamiento está mejorando, empeorando o manteniéndose estable con respecto al uso de kWh.

Los datos con los que estoy trabajando:

+----------+--------+-----------+----------------+----------+-----------+------------+
|  Month   | # Days | kWh Usage | Daily kWh Avg. | Avg. Low | Avg. High | Avg. Temp. |
+----------+--------+-----------+----------------+----------+-----------+------------+
| Mar 2015 |     32 |      1048 |             33 |       40 |        60 |         50 |
| Feb 2015 |     29 |      1156 |             40 |       32 |        54 |         43 |
| Jan 2015 |     33 |      1143 |             35 |       38 |        57 |         47 |
| Dec 2014 |     30 |       887 |             30 |       39 |        61 |         50 |
| Nov 2014 |     29 |       645 |             22 |       45 |        67 |         56 |
| Oct 2014 |     29 |       598 |             21 |       60 |        78 |         69 |
| Sep 2014 |     32 |       893 |             28 |       70 |        85 |         77 |
| Aug 2014 |     30 |       965 |             32 |       72 |        87 |         79 |
| Jul 2014 |     29 |       784 |             27 |       72 |        87 |         79 |
| Jun 2014 |     32 |      1018 |             32 |       69 |        87 |         78 |
| May 2014 |     30 |       702 |             23 |       63 |        82 |         72 |
| Apr 2014 |     33 |       722 |             22 |       50 |        71 |         60 |
| Mar 2014 |     29 |       830 |             29 |       41 |        62 |         52 |
| Feb 2014 |     28 |      1197 |             43 |       32 |        52 |         42 |
| Jan 2014 |     33 |      1100 |             33 |       38 |        59 |         49 |
| Dec 2013 |     30 |       856 |             29 |       40 |        63 |         51 |
| Nov 2013 |     33 |       686 |             21 |       48 |        70 |         59 |
| Oct 2013 |     30 |       527 |             18 |       61 |        77 |         69 |
| Sep 2013 |     30 |       817 |             27 |       69 |        86 |         77 |
| Aug 2013 |     28 |       991 |             35 |       72 |        86 |         79 |
| Jul 2013 |     31 |       993 |             32 |       73 |        86 |         79 |
| Jun 2013 |     30 |       847 |             28 |       66 |        83 |         74 |
| May 2013 |     29 |       605 |             21 |       59 |        76 |         67 |
| Apr 2013 |     34 |       791 |             23 |       47 |        66 |         57 |
+----------+--------+-----------+----------------+----------+-----------+------------+

Comencé con un gráfico de columnas que comparaba fácilmente los valores de mes a mes:

Gráfico de columnas de uso de mes a mes

Imaginé un área de fondo agradable o un gráfico de líneas mapeado a un eje vertical secundario (derecho) que muestra los rangos alto / bajo, pero me di cuenta de que sería problemático con las agrupaciones de varios años.

Sería fácil con un solo año:

Uso de 2014 kWh con temperaturas

Tengo curiosidad por saber si alguien puede recomendar una forma de combinar todos los datos anuales en un solo gráfico con comparaciones de temperatura.

¿Hay alguna relación que pueda usar que pueda relacionar efectivamente el uso de kWh con la temperatura promedio ... o alguna otra técnica de visualización que estoy pasando por alto ... o me quedo con un gráfico por año?

Shawn
fuente

Respuestas:

18

Me gustaría sugerir que lo importante es desarrollar un modelo de costo de energía físicamente realista y prácticamente útil . Eso funcionará mejor para detectar cambios en los costos que cualquier visualización de los datos sin procesar. Al comparar esto con la solución ofrecida en SO , tenemos un estudio de caso muy bueno en la diferencia entre ajustar una curva a los datos y realizar un análisis estadístico significativo.

(Esta sugerencia se basa en haber adaptado dicho modelo al uso de mi propio hogar hace una década y aplicarlo para realizar un seguimiento de los cambios durante ese período. Tenga en cuenta que una vez que el modelo se ajusta, se puede calcular fácilmente en una hoja de cálculo con el fin de realizar un seguimiento cambios, por lo que no deberíamos sentirnos limitados por las (in) capacidades del software de hoja de cálculo).

Para estos datos, dicho modelo físicamente plausible produce una imagen sustancialmente diferente de los costos de energía y los patrones de uso que un modelo alternativo simple (un ajuste cuadrático de mínimos cuadrados del uso diario contra la temperatura media mensual). En consecuencia, el modelo más simple no puede considerarse una herramienta confiable para comprender, predecir o comparar patrones de uso de energía.


Análisis

tt0αβ

αβ

γ

t0t0t1

γt0

Ls=L/6Avg. LowAvg. HighAvg. Temp

Finalmente, debemos estandarizar los datos a una unidad de tiempo común. Aunque eso ya está presente en la Daily kWh Avg.variable, carece de precisión, por lo tanto, dividamos el total por el número de días para recuperar la precisión perdida.

Yt

y(t)=γ+α(tt0)I(t<t0)+β(tt0)I(t>t0)+ε(t)

Iεα,β,γt0t0

x0x1t(x)x

Cost(x0,x1)=x0x1y(t)dt=x0x1(γ+α(t(x)t0)I(t(x)<t0)+β(t(x)t0)I(t(x)>t0)+ε(t(x)))t(x)dx.

ε(t)ε¯t(x)t¯s(t¯)

y¯(t¯)=γ+(βα)s(t¯)2ϕs(t¯t0)+(t¯t0)(β+(αβ)Φs(t0t¯))+ε¯(t¯).

Φss(t¯)ϕ


Modelo de ajuste

α,β,γt0t0Rε¯σ

Para estos datos, las estimaciones son

(α^,β^,γ^,t0^,σ^)=(1.489,1.371,10.2,63.4,1.80).

Esto significa:

  • 1.49

  • 1.37

  • 10.2

  • 63.4

  • 1.80

Los intervalos de confianza y otras expresiones cuantitativas de incertidumbre en estas estimaciones se pueden obtener de manera estándar con la maquinaria de máxima verosimilitud.


Visualización

Para ilustrar este modelo, la siguiente figura traza los datos, el modelo subyacente, el ajuste a los promedios mensuales y un ajuste cuadrático simple de mínimos cuadrados.

Figura

t0

¡Observe cuánto se alejan los ajustes del modelo subyacente (instantáneo), especialmente en las temperaturas medias! Este es el efecto del promedio mensual. (Piense en las alturas de las líneas rojas y azules que están "untadas" en cada segmento gris horizontal. A temperaturas extremas, todo está centrado en las líneas, pero a temperaturas medias los dos lados de la "V" se promedian, lo que refleja la necesidad para calentar en algunos momentos y enfriar en otros momentos durante el mes).


Comparación de modelos

2.071.97

¡Sin embargo, el ajuste cuadrático es completamente inútil para aprender lo que está sucediendo! Su formula,

y¯(t¯)=219.956.241t¯+0.04879(t¯)2,

no revela nada de uso directamente. Para ser justos, podríamos analizarlo un poco:

  1. t^0=6.241/(2×0.04879)=64.063.4219.956.241(63.4)+0.04879(63.4)2=20.4

  2. y¯(t¯)=6.241+2(0.04879)t¯906.241+2(0.04879)(90)=2.54

    32|6.241+2(0.04879)(32)|=3.12

    606850785010

En resumen, aunque se ve casi tan bien en la visualización, el ajuste cuadrático se equivoca enormemente al estimar cantidades fundamentales de interés relacionadas con el uso de energía. Su uso para evaluar cambios en el uso es, por lo tanto, problemático y debe desalentarse.


Cálculo

Este Rcódigo realizó toda la computación y el trazado. Se puede adaptar fácilmente a conjuntos de datos similares.

#
# Read and process the raw data.
#
x <- read.csv("F:/temp/energy.csv")
x$Daily <- x$Usage / x$Length
x <- x[order(x$Temp), ]
#pairs(x)
#
# Fit a quadratic curve.
#
fit.quadratic <- lm(Daily ~ Temp+I(Temp^2), data=x)
# par(mfrow=c(2,2))
# plot(fit.quadratic)
# par(mfrow=c(1,1))
#
# Fit a simple but realistic heating-cooling model with maximum likelihood.
#
response <- function(theta, x, s) {
  alpha <- theta[1]; beta <- theta[2]; gamma <- theta[3]; t.0 <- theta[4]
  x <- x - t.0
  gamma + (beta-alpha)*s^2*dnorm(x, 0, s) +  x*(beta + (alpha-beta)*pnorm(-x, 0, s))
}
log.L <- function(theta, y, x, s) {
  #   theta = (alpha, beta, gamma, t.0, sigma)
  #   x = time
  #   s = estimated SD
  #   y = response
  y.hat <- response(theta, x, s)
  sigma <- theta[5]
  sum((((y - y.hat) / sigma) ^2 + log(2 * pi * sigma^2))/2)
}
theta <- c(alpha=-1, beta=5/4, gamma=20, t.0=65, sigma=2) # Initial guess
x$Spread <- (x$Temp.high - x$Temp.low)/sqrt(6)            # Uniform estimate
fit <- nlm(log.L, theta, y=x$Daily, x=x$Temp, x$Spread)
names(fit$estimate) <- names(theta)
#$
# Set up for plotting.
#
i.pad <- 10
plot(range(x$Temp)+c(-i.pad,i.pad), c(0, max(x$Daily)+20), type="n", 
     xlab="Temp", ylab="Cost, kWh/day",
     main="Data, Model, and Fits")
#
# Plot the data.
#
l <- matrix(mapply(function(l,r,h) {c(l,h,r,h,NA,NA)}, 
                   x$Temp.low, x$Temp.high, x$Daily), 2)
lines(l[1,], l[2,], col="Gray")
points(x$Temp, x$Daily, type="p", pch=3)
#
# Draw the models.
#
x0 <- seq(min(x$Temp)-i.pad, max(x$Temp)+i.pad, length.out=401)
lines(x0, cbind(1, x0, x0^2) %*% coef(fit.quadratic), lwd=3, lty=3)
#curve(response(fit$estimate, x, 0), add=TRUE, lwd=2, lty=1)
t.0 <- fit$estimate["t.0"]
alpha <- fit$estimate["alpha"]
beta <- fit$estimate["beta"]
gamma <- fit$estimate["gamma"]
cool <- "#1020c0"; heat <- "#c02010"
lines(c(t.0, 0), gamma + c(0, -alpha*t.0), lwd=2, lty=1, col=cool)
lines(c(t.0, 100), gamma + c(0, beta*(100-t.0)), lwd=2, lty=1, col=heat)
#
# Display the fit.
#
pred <- response(fit$estimate, x$Temp, x$Spread)
points(x$Temp, pred, pch=16, cex=1, col=ifelse(x$Temp < t.0, cool, heat))
#lines(lowess(x$Temp, pred, f=1/4))
#
# Estimate the residual standard deviations.
#
residuals <- x$Daily - pred
sqrt(sum(residuals^2) / (length(residuals) - 4))
sqrt(sum(resid(fit.quadratic)^2) / (length(residuals) - 3))
whuber
fuente
44
Esta puede ser la mejor respuesta a cualquier pregunta de desbordamiento de pila que he leído. Aprecio mucho el tiempo que se tomó para explicar la lógica y el razonamiento detrás de la solución.
Shawn
1
La física es más peluda que esto. El condensador y el evaporador cambian las funciones de calefacción frente a enfriamiento. Esto significa que actúan como dos sistemas diferentes, no uno continuo. Los días de grado de calefacción, los días de grado de enfriamiento y los días de grado de deshumidificación son tres factores de costo separados, y dependiendo de la ubicación geográfica (piense en ak, wi, ca, az, mo y fl) y el año pueden actuar de manera discontinua (el final de la temporada de calefacción no es No es lo mismo que el inicio del enfriamiento). Las estadísticas decentes en los datos dicen que hay 5 temporadas, no 4. Mayo es su propia temporada, al menos en los últimos 5 años.
EngrStudent
@EngrStudent Todos los puntos buenos y muy apreciados. Sostendría que el enfoque presentado aquí, aunque simplificado, muestra lo que se necesita para sentar las bases para descubrir estos efectos más sutiles. Una vez que maneje los términos importantes en el modelo, y creo que nadie negará que la temperatura tiene que ser un contribuyente dominante a los costos, entonces, si lo ha hecho de una manera físicamente significativa, podría identificar otros términos. y tal vez incluso estimar sus efectos con precisión. Si no manejas los términos grandes correctamente, entonces no tienes ninguna esperanza de caracterizar a los demás.
whuber
Me encanta esta buena base / análisis, por favor escuchen esto como aplausos, no como críticas. El proceso de calentamiento es diferente al enfriamiento, por lo que la cuadrática no por partes en ambos lados podría estar en desacuerdo con eso. La bobina del evaporador está en el interior durante el enfriamiento y en el exterior durante el calentamiento. En la bomba de calor también hay ciclos de descongelación y "calor de respaldo". Además, el compresor tiene que trabajar más para luchar contra una temperatura exterior más extrema, por lo que no solo está moviendo más calor, sino que está subiendo una colina más alta. No es lineal La humedad es grande y puede ser 2/3 del presupuesto de energía. Infiltración de aire.
EngrStudent
@EngrStudent Gracias de nuevo, todos esos son puntos interesantes. No tenía idea de que la humedad podría representar una proporción tan grande del presupuesto. Ese es el tipo de observación que ejemplifica el valor potencial de acoplar una buena teoría (o "modelo conceptual" en algunos círculos) con el análisis estadístico.
whuber
0

Recibí una respuesta en StackOverflow . Si alguien tiene pensamientos adicionales, todavía estoy muy interesado en soluciones alternativas.

/programming/29777890/data-visualization-how-to-represent-kwh-usage-by-year-against-average-temperatu

Shawn
fuente
1
La solución en SO es inverosímil. La ley de enfriamiento de Newton , que es una aproximación razonable de primer orden útil como punto de partida, sugiere que la gráfica del uso de energía frente a la temperatura debería ser la unión de dos líneas (tal vez de diferentes pendientes). El promedio oculta los cambios de temperatura diarios (e incluso por hora) que desdibujarán la región en la intersección de esas líneas (donde no se necesita calefacción ni refrigeración). Un ajuste cuadrático puede ser razonable allí, pero asintóticamente el ajuste debe ser lineal .
whuber
Sé que los promedios difunden la precisión, pero son los datos que tengo. Debido a la mala comprensión de las estadísticas, no entiendo las frases "debería ser la unión de dos líneas ..." y "asintóticamente, el ajuste debe ser lineal" . Desde un punto de vista novato, la publicación SO parece intuitiva, ya que se ajusta a mis expectativas de que el consumo de energía aumente en los extremos opuestos de la escala de temperatura y sea más bajo en el rango medio donde no se necesita calefacción ni refrigeración. ¿No sería simétrico un ajuste cuadrático? No creo que el uso de energía sea simétrico ya que usamos más energía para calentar que para enfriar. Agradezco cualquier corrección o consejo.
Shawn
Un ajuste cuadrático, aunque simétrico, no es físico en los extremos, porque dice que pagará mucho más por calentar a las temperaturas más bajas, y mucho más por enfriar a las temperaturas más altas, de lo que es físicamente plausible. Además, la simetría en la parcela se esperaría solo cuando el costo de enfriar la casa por grado sea el mismo que el costo de calentarla por grado, lo que supone que los sistemas de calefacción y refrigeración son igualmente eficientes. Ese podría o no ser el caso, pero no debe imponer esa simetría en su modelo.
whuber
Estoy de acuerdo en que difiere ya que cuesta más enfriar que calentar por grado. Sin embargo, así que entiendo el primer comentario, ¿sugiere que el ajuste cuadrático de la publicación SO, aunque razonable, no es realmente preciso y que un ajuste lineal es la respuesta técnicamente correcta debido a la ley de enfriamiento de Newton? Lo que no entiendo es la inverosimilitud de la solución SO .
Shawn
1
No pude ajustar mi respuesta a esa última pregunta en el espacio para un comentario, así que lo publiqué como respuesta. Sin embargo, no veo cómo deduce que los costos de enfriamiento por grado son mayores que los costos de calefacción por grado. Sus datos parecen indicar que lo contrario es cierto (aunque los costos son bastante bajos, como era de esperar). ¡Y tenga en cuenta que un modelo lineal no implica un ajuste lineal ! Están sucediendo muchas cosas aquí para hacer que los datos se desvíen sistemáticamente de este modelo subyacente.
whuber