Artículos

4.7: Ajuste de modelos exponenciales a datos


En la sección anterior, vimos rectas numéricas usando escalas logarítmicas. También es común ver gráficos bidimensionales con uno o ambos ejes usando una escala logarítmica.

Un uso común de una escala logarítmica en el eje vertical es graficar cantidades que cambian exponencialmente, ya que ayuda a revelar diferencias relativas. Ambos gráficos de acciones a continuación muestran el promedio industrial Dow Jones, desde 1928 hasta 2010.

Ambos gráficos tienen una escala horizontal lineal, pero el primer gráfico tiene una escala vertical lineal, mientras que el segundo tiene una escala vertical logarítmica. La primera escala es con la que estamos más familiarizados y muestra lo que parece ser una fuerte tendencia exponencial, al menos hasta el año 2000.

Ejemplo ( PageIndex {1} )

Hubo caídas en el mercado de valores en 1929 y 2008. ¿Cuál fue más grande?

Solución

En el primer gráfico, la caída del mercado de valores alrededor de 2008 parece muy grande y, en términos de valores en dólares, fue de hecho una gran caída. Sin embargo, el segundo gráfico muestra cambios relativos, y la caída en 2009 parece menos importante en este gráfico y, de hecho, la caída a partir de 1929 fue, porcentualmente, mucho más significativa.

Específicamente, en 2008, el valor del Dow Jones cayó de aproximadamente 14.000 a 8.000, una caída de 6.000. Obviamente, se trata de una gran caída de valor, y equivale a una caída de alrededor del 43%. En 1929, el valor Dow cayó de un máximo de 380 a un mínimo de 42 en julio de 1932. Si bien, en términos de valor, esta caída de 338 es mucho menor que la caída de 2008, corresponde a una caída del 89%, una caída mucho mayor caída relativa que en 2008. La escala logarítmica muestra estos cambios relativos.

El segundo gráfico anterior, en el que un eje usa una escala lineal y el otro eje usa una escala logarítmica, es un ejemplo de una semi-log grafico.

Definición: GRÁFICOS semilogarítmicos y logarítmicos

A semi-log gráfico es un gráfico con un eje que utiliza una escala lineal y un eje que utiliza una escala logarítmica.

A log-log gráfico es un gráfico con ambos ejes que utiliza escalas logarítmicas.

Ejemplo ( PageIndex {2} )

Trace 5 puntos en la gráfica de (f (x) = 3 (2) ^ {x} ) en una gráfica semilogarítmica con una escala logarítmica en el eje vertical.

Solución

Para hacer esto, necesitamos encontrar 5 puntos en el gráfico, luego calcular el logaritmo del valor de salida. Elegir arbitrariamente 5 valores de entrada,

(X) (f (x) )registro ( (f (x) ))
-3 (3 (2) ^ {- 1} = dfrac {3} {8} )-0.426
-1 (3 (2) ^ {- 1} = dfrac {3} {2} )0.176
0(3(2)^{0} = 3)0.477
2(3(2)^{2} = 12)1.079
5(3(2)^{5} = 96)1.982

Trazar estos valores en un gráfico semilogarítmico,

Observe que en esta escala semilogarítmica, los valores de la función exponencial parecen lineales. Podemos demostrar que este comportamiento es el esperado utilizando propiedades logarítmicas. Para la función (f (x) = ab ^ {x} ), encontrar log ( (f (x) )) da

[ log left (f (x) right) = log left (ab ^ {x} right) nonumber ] Utilizando la propiedad de suma de los registros,
[ log left (f (x) right) = log left (a right) + log left (b ^ {x} right) nonumber ] Ahora utilizando la propiedad del exponente,
[ log left (f (x) right) = log left (a right) + x log left (b right) nonumber ]

Esta relación es lineal, con log (a) como la intersección vertical, y log (B) como la pendiente. Esta relación también se puede utilizar a la inversa.

Ejemplo ( PageIndex {3} )

Se traza un gráfico exponencial en ejes semilogarítmicos. Encuentra una fórmula para la función exponencial (g (x) ) que generó esta gráfica.

Solución

La gráfica es lineal, con una intersección vertical en (0, 1). Al observar el cambio entre los puntos (0, 1) y (4, 4), podemos determinar que la pendiente de la línea es ( dfrac {3} {4} ). Dado que la salida es log ( (g (x) )), esto conduce a la ecuación ( log left (g (x) right) = 1 + dfrac {3} {4} x ).

Podemos resolver esta fórmula para (g (x) ) reescribiendo en forma exponencial y simplificando:

[ log left (g (x) right) = 1 + dfrac {3} {4} x nonumber ] Reescribiendo como exponencial,
[g (x) = 10 ^ {1+ dfrac {3} {4} x} nonumber ] Separando esto usando reglas de exponentes,
[g (x) = 10 ^ {1} cdot 10 ^ { dfrac {3} {4} x} nonumber ] Usando reglas de exponentes para agrupar el segundo factor,
[g (x) = 10 ^ {1} cdot left (10 ^ { dfrac {3} {4}} right) ^ {x} nonumber ] Evaluando las potencias de 10,
[g (x) = 10 left (5.623 right) ^ {x} nonumber ]

Ejercicio ( PageIndex {1} )

Un gráfico exponencial se traza en un gráfico semilogarítmico a continuación. Encuentra una fórmula para la función exponencial (g (x) ) que generó esta gráfica.

Respuesta

[g (x) = 10 ^ {2 - 0.5x} = 10 ^ 2 (10 ^ {- 0.5}) ^ {x}, quad f (x) = 100 (0.3162) ^ x nonumber ]

Adaptación de funciones exponenciales a Datos

Algunas opciones tecnológicas proporcionan funciones dedicadas para encontrar funciones exponenciales que se ajustan a los datos, pero muchas solo proporcionan funciones para ajustar funciones lineales a los datos. La escala semilogarítmica nos proporciona un método para ajustar una función exponencial a los datos basándose en las técnicas que tenemos para ajustar funciones lineales a los datos.

para ajustar una función exponencial a un conjunto de datos usando linealización

  1. Encuentra el registro de los valores de salida de datos
  2. Encuentre la ecuación lineal que se ajuste a los pares (entrada, log (salida)). Esta ecuación tendrá la forma log ( (f (x) )) = (b + mx ).
  3. Resuelve esta ecuación para la función exponencial (f (x) )

Ejemplo ( PageIndex {4} )

La siguiente tabla muestra el costo en dólares por megabyte de espacio de almacenamiento en discos duros de computadora desde 1980 hasta 2004, y los datos se muestran en un gráfico estándar a la derecha, con la entrada cambiada a años posteriores a 1980.

Estos datos parecen estar disminuyendo exponencialmente. Para encontrar una función que modele esta disminución, comenzaríamos por encontrar el logaritmo de los costos.

Solución

Como se esperaba, el gráfico del logaritmo de costos parece bastante lineal, lo que sugiere que una función exponencial se ajustará a los datos originales y se ajustará razonablemente bien. Usando tecnología, podemos encontrar una ecuación lineal que se ajuste a los valores logarítmicos (costo). Usando (t ) como años después de 1980, la regresión lineal da la ecuación:

[ log (C (t)) = 2.794-0.231t nonumber ]

Resolviendo para (C (t) ),

[C (t) = 10 ^ {2.794-0.231t} nonumber ]
[C (t) = 10 ^ {2.794} cdot 10 ^ {- 0.231t} nonumber ]
[C (t) = 10 ^ {2.794} cdot left (10 ^ {- 0.231} right) ^ {t} nonumber ]
[C (t) = 622 cdot left (0.5877 right) ^ {t} nonumber ]

Esta ecuación sugiere que el costo por megabyte de almacenamiento en los discos duros de las computadoras está disminuyendo aproximadamente un 41% cada año.

Con esta función, podríamos predecir el costo del almacenamiento en el futuro. Predecir el costo en el año 2020 ( (t = 40 )):

(C (40) = 622 left (0.5877 right) ^ {40} approx 0.000000364 ) dólares por megabyte, un número realmente pequeño. Eso equivale a $ 0.36 por terabyte de almacenamiento en disco duro.

Al comparar los valores predichos por este modelo con los datos reales, vemos que el modelo coincide con los datos originales en orden de magnitud, pero los valores específicos parecen bastante diferentes. Este es, desafortunadamente, el mejor modelo exponencial que puede ajustarse a los datos. Es posible que un modelo no exponencial se ajuste mejor a los datos, o podría haber una variabilidad lo suficientemente amplia en los datos como para que ningún modelo relativamente simple se ajuste mejor a los datos.

AñoCosto real por MBCosto predicho por modelo
1980192.31622.3
198487.8674.3
198815.988.9
199241.1
19960.1730.13
20000.0068490.015
20040.0011490.0018

Ejercicio ( PageIndex {2} )

La siguiente tabla muestra el valor (V ), en miles de millones de dólares, de las importaciones estadounidenses desde China (t ) años después de 2000.

año200020012002200320042005
(t )012345
(V )100102.3125.2152.4196

Estos datos parecen estar creciendo exponencialmente. Linealice estos datos y cree un modelo para predecir cuántos miles de millones de dólares de importaciones se esperaban en 2011.

Respuesta

(V (t) = 90.545 (1.2078) ^ t ). Predecir en 2011, (V (11) = 722,45 ) mil millones de dólares.

Temas importantes de esta sección

  • Gráfico semi-logarítmico
  • Gráfico log-log
  • Linealizar funciones exponenciales
  • Ajustar una ecuación exponencial a los datos

Construyendo un modelo exponencial a partir de datos

Como hemos aprendido, hay una multitud de situaciones que pueden modelarse mediante funciones exponenciales, como el crecimiento de la inversión, la desintegración radiactiva, los cambios de presión atmosférica y las temperaturas de un objeto que se enfría. ¿Qué tienen estos fenómenos en común? Por un lado, todos los modelos aumentan o disminuyen a medida que avanza el tiempo. Pero esa no es toda la historia. Es el manera los datos aumentan o disminuyen que nos ayudan a determinar si se modela mejor mediante una ecuación exponencial. Conocer el comportamiento de las funciones exponenciales en general nos permite reconocer cuándo usar la regresión exponencial, así que revisemos el crecimiento y la disminución exponenciales.

Regresión exponencial se utiliza para modelar situaciones en las que el crecimiento comienza lentamente y luego se acelera rápidamente sin límites, o donde la descomposición comienza rápidamente y luego se ralentiza para acercarse cada vez más a cero. Usamos el comando “ExpReg” en una utilidad gráfica para ajustar una función exponencial a un conjunto de puntos de datos. Esto devuelve una ecuación de la forma, y ​​= a b x y = a b x

Dado un conjunto de datos, realice una regresión exponencial utilizando una herramienta gráfica.

  1. Use el menú STAT y luego EDIT para ingresar los datos dados.
    1. Borre cualquier dato existente de las listas.
    2. Enumere los valores de entrada en la columna L1.
    3. Enumere los valores de salida en la columna L2.
    1. Utilice ZOOM [9] para ajustar los ejes para que se ajusten a los datos.
    2. Verifique que los datos sigan un patrón exponencial.
    1. Seleccione “ExpReg” en el menú STAT y luego CALC.
    2. Utilice los valores devueltos para a y B para registrar el modelo, y = a b x. y = a b x.

    En 2007, se publicó un estudio universitario que investigaba el riesgo de accidentes por conducir bajo los efectos del alcohol. Se utilizaron datos de 2.871 choques para medir la asociación del nivel de alcohol en sangre (BAC) de una persona con el riesgo de sufrir un accidente. [enlace] muestra los resultados del estudio 1. El riesgo relativo es una medida de cuántas veces más probabilidades hay de que una persona se estrelle. Entonces, por ejemplo, una persona con un BAC de 0.09 tiene 3.54 veces más probabilidades de chocar que una persona que no ha bebido alcohol.

    1. Usando el menú STAT y luego EDIT en una utilidad de gráficos, enumere los valores de BAC en L1 y los valores de riesgo relativo en L2. Luego use la función STATPLOT para verificar que la gráfica de dispersión siga el patrón exponencial que se muestra en [enlace]:

    Utilice el comando "ExpReg" del menú STAT y luego CALC para obtener el modelo exponencial,

    Convirtiendo de notación científica, tenemos:

    Utilice el modelo para estimar el riesgo asociado con un BAC de 0,16. 0,16. Sustituye x x por 0.16 0.16 en el modelo y resuelve para y. y.

    Si una persona que pesa 160 libras conduce después de tomar 6 bebidas, tiene 26,35 veces más probabilidades de chocar que si conduce sobria.

    [enlace] muestra el saldo de la tarjeta de crédito de un recién graduado cada mes después de la graduación.

    1. Utilice la regresión exponencial para ajustar un modelo a estos datos.
    2. Si el gasto continúa a este ritmo, ¿cuál será la deuda de la tarjeta de crédito del graduado un año después de graduarse?

    ¿Es razonable suponer que un modelo de regresión exponencial representará una situación indefinidamente?

    No. Recuerde que los modelos están formados por datos del mundo real recopilados para la regresión. Por lo general, es razonable hacer estimaciones dentro del intervalo de observación original (interpolación). Sin embargo, cuando se utiliza un modelo para hacer predicciones, es importante utilizar las habilidades de razonamiento para determinar si el modelo tiene sentido para las entradas mucho más allá del intervalo de observación original (extrapolación).


    Argumentos

    Un objeto de incidencia, generado por la función incidencia (). Para la función de trazado, un objeto Incide_fit.

    Un punto de tiempo opcional que identifica la separación entre los dos modelos. Si es NULL, se ajusta un solo modelo. Si se proporciona, se instalarían dos modelos en los períodos de tiempo a cada lado de la división.

    El intervalo de confianza que se utilizará para las predicciones tiene un valor predeterminado del 95%.

    Un indicador lógico que indica si las advertencias de ajuste deben estar ocultas FALSO de forma predeterminada. Las advertencias suelen indicar alguna incidencia cero, que se eliminan antes de realizar la regresión logarítmica lineal.

    El tamaño, en días, de la ventana de tiempo a cada lado de la división.

    Un indicador lógico que indica si se debe agregar un gráfico a la salida (VERDADERO, predeterminado), que muestra la media de R2 para varias divisiones.

    Si hay grupos presentes, ¿deberían determinarse fechas separadas para cada grupo? El valor predeterminado es TRUE, en el que se crearán fechas de división separadas y, por lo tanto, se construirán modelos separados para cada grupo. Cuando sea FALSO, la fecha dividida se determinará a partir de los datos agrupados y se modelará con los grupos como efectos principales e interacciones con la fecha.


    Interfaz de aplicación¶

    La API de PyFlux está diseñada para ser lo más clara y concisa posible, lo que significa que se requieren un número mínimo de pasos para llevar a cabo el proceso de construcción del modelo. El esquema de alto nivel se detalla a continuación.

    El primer paso es crear una instancia de modelo, donde los argumentos principales son (i) una entrada de datos, como un marco de datos de pandas, (ii) parámetros de diseño, como retrasos autorregresivos para un modelo ARIMA, y (iii) una familia, que especifica la distribución de la serie de tiempo modelada , como una distribución normal.

    El segundo paso es formación previa, que implica especificar una familia para cada variable latente en el modelo usando el método adjust_prior, por ejemplo, podemos a priorizar para la constante en el modelo ARIMA (N left (0,10 right) ). Las variables latentes se pueden ver imprimiendo el objeto latent_variables adjunto al modelo. Se ignorará la formación previa si el usuario solo tiene la intención de hacer Máxima probabilidad.

    El tercer paso es ajuste del modelo (o inferencia), que implica el uso de un método de ajuste, especificando una opción de inferencia. Las opciones actuales incluyen Máxima probabilidad (MLE), Metropolis-Hastings (M-H) e inferencia variacional de caja negra (BBVI). Una vez completado, la información de la variable latente del modelo se actualizará y el usuario podrá continuar con los métodos de ajuste posterior.

    El cuarto paso es evaluación del modelo, retrospección y predicción. Una vez que se ha ajustado el modelo, el usuario puede observar el ajuste histórico, criticar con comprobaciones predictivas posteriores, predecir fuera de la muestra y realizar una serie de otras tareas para su modelo.


    Ajuste exponencial del total de casos de COVID-19 en California

    Los datos relacionados con la pandemia de COVID-19 se han obtenido del sitio web oficial de los “Centros para el Control y la Prevención de Enfermedades” (https://data.cdc.gov/Case-Surveillance/United-States-COVID-19-Cases- and-Deaths-by-State-o / 9mfq-cb36) y descargado como un archivo .csv. Lo primero que debe hacer es importar los datos a un marco de datos de Pandas. Para hacer esto, los Pandas funcionan pandas.read_csv () y pandas.Dataframe () fueron empleados. El marco de datos creado está compuesto por 15 columnas, entre las cuales podemos encontrar la fecha de envío, el estado, el total de casos, los casos confirmados y otros observables relacionados. Para obtener una idea del orden en el que se muestran estas categorías, imprimimos el encabezado del marco de datos como se puede observar, los casos totales se enumeran bajo la voz "tot_cases".

    Dado que en este artículo solo nos interesan los datos relacionados con California, creamos un sub-marco de datos que contiene solo la información relacionada con el estado de California. Para hacer eso, aprovechamos el potencial de Pandas en la indexación de subsecciones de un marco de datos. Este marco de datos se llamará df_CA (de California) y contiene todos los elementos del marco de datos principal para los que la columna "estado" es igual a "CA". Después de este paso, podemos construir dos matrices, una (llamada tot_cases) que contiene el total de casos (el nombre de la columna de encabezado respectiva es "tot_cases") y uno que contiene el número de días transcurridos por el primer registro (llamado dias). Dado que los datos se registraron diariamente, para construir la matriz de "días", simplemente construimos una matriz de números enteros igualmente espaciados desde 0 hasta la longitud de la matriz "tot_cases", de esta manera, cada número se refiere al n ° de días transcurridos desde la primera grabación (día 0).

    En este punto, podemos definir la función que utilizará curve_fit () para ajustar el conjunto de datos creado. Una función exponencial está definida por la ecuación:

    y = a * exp (b * x) + c

    donde a, b y C son los parámetros de ajuste. Por lo tanto, definiremos la función exp_fit () que devuelve la función exponencial, y, previamente definido. La función curve_fit () toma como entrada necesaria la función de ajuste con la que queremos ajustar los datos, las matrices xey en las que se almacenan los valores de los puntos de datos. También es posible proporcionar estimaciones iniciales para cada uno de los parámetros de ajuste insertándolos en una lista llamada p0 = […] y límites superior e inferior para estos parámetros (para obtener una descripción completa de la función curve_fit (), consulte https : //docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.curve_fit.html). En este ejemplo, solo proporcionaremos estimaciones iniciales para nuestros parámetros de ajuste. Además, solo ajustaremos el total de casos de los primeros 200 días, esto se debe a que, para los días sucesivos, el número de casos ya no siguió una tendencia exponencial (posiblemente debido a una disminución en el número de casos nuevos). Para hacer referencia solo a los primeros 200 valores de las matrices "días" y "tot_cases", aprovechamos la división de matrices (por ejemplo, días [: 200]).

    La salida de curve_fit () son los parámetros de ajuste, presentados en el mismo orden que se utilizó durante su definición, dentro de la función de ajuste. Teniendo esto en cuenta, podemos construir la matriz que contiene los resultados ajustados, llamándola "fit_eq".

    Ahora que construimos la matriz de ajuste, podemos trazar tanto los puntos de datos originales como su ajuste exponencial.

    El resultado final será un gráfico como el de la Figura 1:

    Figura 1


    4.7 Escribir y aplicar exponencial - Presentación de PowerPoint PPT

    PowerShow.com es un sitio web líder para compartir presentaciones / diapositivas. Ya sea que su aplicación sea comercial, práctica, educación, medicina, escuela, iglesia, ventas, marketing, capacitación en línea o simplemente por diversión, PowerShow.com es un gran recurso. Y, lo mejor de todo, la mayoría de sus funciones interesantes son gratuitas y fáciles de usar.

    Puede usar PowerShow.com para buscar y descargar ejemplos de presentaciones ppt de PowerPoint en línea sobre casi cualquier tema que pueda imaginar para que pueda aprender cómo mejorar sus propias diapositivas y presentaciones de forma gratuita. O utilícelo para buscar y descargar presentaciones ppt de PowerPoint de alta calidad con diapositivas ilustradas o animadas que le enseñarán cómo hacer algo nuevo, también de forma gratuita. O utilícelo para cargar sus propias diapositivas de PowerPoint para que pueda compartirlas con sus profesores, clase, estudiantes, jefes, empleados, clientes, inversores potenciales o el mundo. O utilícelo para crear presentaciones de diapositivas de fotos realmente geniales, con transiciones 2D y 3D, animación y su elección de música, que puede compartir con sus amigos de Facebook o círculos de Google+. ¡Eso también es gratis!

    Por una pequeña tarifa, puede obtener la mejor privacidad en línea de la industria o promover públicamente sus presentaciones y presentaciones de diapositivas con las mejores clasificaciones. Pero aparte de eso, es gratis. Incluso convertiremos sus presentaciones y presentaciones de diapositivas al formato Flash universal con todo su esplendor multimedia original, incluida la animación, los efectos de transición 2D y 3D, música u otro audio incrustado, o incluso vídeo incrustado en diapositivas. Todo gratis. La mayoría de las presentaciones y presentaciones de diapositivas en PowerShow.com se pueden ver gratis, muchas incluso se pueden descargar gratis. (Puede elegir si desea permitir que las personas descarguen sus presentaciones de PowerPoint y presentaciones de diapositivas de fotos originales por una tarifa o gratis o no.) Visite PowerShow.com hoy, GRATIS. ¡Realmente hay algo para todos!

    presentaciones gratis. O utilícelo para buscar y descargar presentaciones ppt de PowerPoint de alta calidad con diapositivas ilustradas o animadas que le enseñarán cómo hacer algo nuevo, también de forma gratuita. O utilícelo para cargar sus propias diapositivas de PowerPoint para que pueda compartirlas con sus profesores, clase, estudiantes, jefes, empleados, clientes, inversores potenciales o el mundo. O utilícelo para crear presentaciones de diapositivas de fotos realmente geniales, con transiciones 2D y 3D, animación y su elección de música, que puede compartir con sus amigos de Facebook o círculos de Google+. ¡Eso también es gratis!


    Respuesta

    No hay opciones para que el usuario ingrese valores de parámetros de suavizado exponencial en los cuadros de diálogo & quot; Modelador de series temporales & quot o en la sintaxis TSMODEL. Puede especificar dichos parámetros ejecutando el comando EXSMOOTH desde una ventana de sintaxis. Los parámetros disponibles son ALPHA (parámetro de suavizado general o constante de suavizado), GAMMA (parámetro de suavizado de tendencia), DELTA (parámetro de suavizado estacional) y PHI (parámetro de modificación de tendencia).

    El comando EXSMOOTH formaba parte del módulo Tendencias en versiones anteriores de SPSS. Los procedimientos del módulo Tendencias, incluido EXSMOOTH, así como ARIMA, AREG (regresión con errores autocorrelacionados) y otros, están disponibles solo a través de comandos de sintaxis en versiones recientes de SPSS Statistics. El nuevo módulo de pronóstico se introdujo en SPSS 14 y los cuadros de diálogo de tendencias se eliminaron en SPSS 16. Los comandos de sintaxis de tendencias están disponibles ahora como parte del núcleo de estadísticas, por lo que tiene acceso a los comandos si tiene SPSS Statiistics versión de SPSS no incluye procesamiento de comandos de sintaxis). Si desea ingresar los parámetros de suavizado para el suavizado exponencial, debe ejecutar el comando de sintaxis EXSMOOTH. A continuación, se muestra un ejemplo de las páginas de ayuda de sintaxis de EXSMOOTH:

    EXSMOOTH VAR2
    / MODELO = LA
    / PERIODO = 4
    / SEASFACT = (23-14,4 7-15,6)
    /ALPHA=0.20
    /GAMMA=0.20
    /DELTA=0.30
    / INICIAL = (112,17).

    Este comando especifica un componente de tendencia lineal con un componente estacional aditivo (/ MODEL = LA).

    Para ver la ayuda de sintaxis del comando EXSMOOTH, escriba EXSMOOTH (no es necesario utilizar mayúsculas) en una ventana del editor de sintaxis de SPSS Statistics y luego haga clic en el icono Ayuda de sintaxis en la barra de herramientas de la ventana de sintaxis. Este icono parece una hoja de papel con un signo de interrogación en la esquina inferior izquierda. Los comandos de Tendencias no aparecen en la Guía de referencia de sintaxis que se abre al hacer clic en
    Referencia de sintaxis de Help- & gtCommand.


    Uso

    un vector de valores de escala lineal no exponencial que representa el tiempo.

    la primera constante de tasa, expresada en recíproco de las unidades de tiempo del eje X. La primera vida media es 0,6932 / k1.

    la segunda constante de tasa, expresada en recíproco de las unidades de tiempo del eje X. La segunda vida media es 0,6932 / k2.

    un valor único para el rango de y en la primera fase de desintegración, en unidades y.

    un valor único para el rango de y en la segunda fase de desintegración, en unidades y ..

    el valor y esperado más bajo, o el valor en tiempos infinitos, expresado en las mismas unidades que Y.


    Uso básico

    Conjunto de datos

    Usar epifitter datos Se necesitan al menos dos variables, una que represente el tiempo de cada evaluación de la intensidad de la enfermedad durante el curso de las epidemias y la otra que represente una variable de intensidad de la enfermedad como proporción (por ejemplo, incidencia, gravedad, prevalencia). Para el caso de experimentos diseñados con réplicas, se necesita una tercera variable.

    Simulemos un conjunto de datos DPC para una epidemia medida en parcelas replicadas. Los datos simulados se asemejan a epidemias policíclicas de forma sigmoidea. Podemos hacer eso usando el epifitter sim_logistic () función de epifitter (más sobre? sim_logistic aquí).

    Echemos un vistazo al conjunto de datos simulado.

    El objeto dpc_L generado usando sim_logistic () es un marco de datos con cuatro columnas. La variable y es un vector de la intensidad de la enfermedad como proporción (0 & lt y & lt 1). Para facilitar la visualización, hagamos un gráfico con la función ggplot del ggplot2 paquete.

    Regresión lineal usando fit_lin ()

    El fit_lin () requiere al menos el tiempo y los argumentos y. En el ejemplo, llamaremos random_y que representa las réplicas. A continuación se muestra una forma rápida de llamar a estas variables adjuntas al marco de datos.

    fit_lin () genera un objeto de lista que contiene varios elementos. Tres elementos de la lista se muestran de forma predeterminada: estadísticas de ajuste del modelo, tasa de infección e inóculo inicial

    Estadísticas de ajuste del modelo

    El elemento Estadísticas de la lista muestra cómo cada uno de los cuatro modelos predijo las observaciones en función de tres medidas:

    • Coeficiente de correlación de concordancia de Lin CCC (Lin 2000), una medida de concordancia que tiene en cuenta tanto el sesgo como la precisión
    • Coeficiente de determinación r_squared (R 2), una medida de precisión
    • Desviación estándar residual RSE para cada modelo.

    Los cuatro modelos están ordenados de mayor a menor CCC. Como era de esperar, debido a que se utilizó la función sim_logistic para crear los datos sintéticos de la epidemia, el Logístico modelo era superior a los demás.

    Coeficientes del modelo

    Las estimaciones, y el error estándar respectivo y el intervalo de confianza superior e inferior del 95%, para los dos coeficientes de interés se muestran en los elementos Tasa de infección e Inóculo inicial. Para este último, se muestran tanto la retrotransformada (estimación) como la estimación linealizada.

    Estadísticas globales

    El elemento f_lin $ stats_all proporciona un marco de datos de formato amplio con todas las estadísticas de cada modelo.

    Predicciones de modelos

    Los valores predichos se almacenan como un marco de datos en el elemento de datos llamado usando el mismo operador $ que el anterior. Para cada modelo se muestran tanto las predicciones observadas y (y) como las transformadas hacia atrás (predichas). También se muestran el valor linealizado y el residual.

    Parcela de predicciones

    Plot_fit () produce, por defecto, un panel de gráficos que representan los valores observados y predichos por todos los modelos ajustados. Los argumentos pont_size y line_size que controlan el tamaño de los puntos para la observación y el tamaño de la línea ajustada, respectivamente.

    Parcelas listas para publicación

    Las parcelas son ggplot2 objetos que se pueden personalizar fácilmente agregando nuevas capas que anulan los parámetros de trazado como se muestra a continuación. Los modelos de argumentos permiten seleccionar los modelos que se mostrarán en la trama. La siguiente parcela se personalizó para el modelo logístico.

    Regresión no lineal

    Dos parámetros

    La función fit_nlin () utiliza el algoritmo de Levenberg-Marquardt para la estimación por mínimos cuadrados de parámetros no lineales. Además del tiempo y la intensidad de la enfermedad, los valores iniciales para y0 y r deben darse en el argumento par_inicio. El formato de salida y la interpretación son análogos a fit_lin ().

    NOTA: Si encuentra mensajes de error que dicen "matriz en estimaciones de parámetros iniciales", intente modificar los valores iniciales de los parámetros para resolver el problema.

    Podemos verificar los resultados usando plot_fit.

    Estimación de K (enfermedad máxima)

    En muchas epidemias la última medida (tiempo final) de un DPC no alcanza la intensidad máxima y, por esta razón, puede ser necesaria la estimación de la asíntota máxima (capacidad de carga K). Fin_lin2 () proporciona una estimación de K además de las estimaciones proporcionadas por fit_lin ().

    Antes de demostrar la función, podemos transformar nuestros datos simulados creando otra variable con y_random2 con un máximo de aproximadamente 0.8 (80%). La forma más sencilla es multiplicar y_random por 0,8.

    Luego ejecutamos fit_nlin2 () para el nuevo conjunto de datos.

    Ajustar modelos a varios DPC

    Por lo general, hay más de una epidemia para analizar, ya sea de estudios observacionales o experimentales. Cuando el objetivo es ajustar un modelo común a todas las curvas, la función fit_multi () está disponible. Cada DPC necesita una identificación única para combinarla en un solo marco de datos.

    Usemos la familia de funciones sim_ para crear tres epidemias y almacenar los datos en un solo marco de datos. Se utilizó el modelo de Gompertz para simular estos datos. Tenga en cuenta que permitimos que los parámetros y0 y r difieran los DPC. Debemos combinar los tres DPC usando la función bind_rows () y nombrar el identificador (.id), creado automáticamente como un vector de caracteres, para cada epidemia como "DPC".

    Podemos visualizar los tres DPC en una misma trama.

    O use facet_wrap () para trazarlos por separado.

    Usando fit_multi ()

    fit_multi () requiere al menos cuatro argumentos: tiempo, intensidad de la enfermedad (como proporción), datos y el identificador de la curva (strata_cols). El último argumento acepta uno o más estratos incluidos como c (& quotstrata1 & quot, estratos2 & quot). En el ejemplo siguiente, el nombre del estrato es DPC, el nombre de la variable.

    De forma predeterminada, la regresión lineal se ajusta a los datos, pero agregando otro argumento nlin = T, se ajustan las regresiones no lineales en su lugar.

    Todos los parámetros de la lista se pueden devolver usando el operador $ como se muestra a continuación.

    Del mismo modo, se pueden devolver todos los datos.

    Si se prefiere la regresión no lineal, el argumento nlim debe establecerse en TRUE

    ¿Quiere estimar K?

    Si desea estimar K, establezca nlin = TRUE y estimar_K = TRUE.

    NOTA: Si no establece ambos argumentos en VERDADERO, K no se estimará, porque nlin predeterminado es FALSO. También recuerde que al estimar K, no nos ajustamos al Exponencial modelo.

    Salidas gráficas

    Utilice ggplot2 para producir elegantes visualizaciones de datos de las curvas de los modelos y los parámetros estimados.

    DPC y curvas ajustadas

    Los datos originales y los valores predichos por cada modelo se almacenan en multi_fit $ Data. Se puede producir una bonita trama de la siguiente manera:

    Tasa de infección aparente

    El elemento multi_fit $ Parameters es donde se almacenan todas las estadísticas y parámetros. Tracemos las estimaciones de la tasa de infección aparente.


    Pronóstico: principios y práctica (3a ed)

    Aunque la relación lineal asumida hasta ahora en este capítulo a menudo es adecuada, hay muchos casos en los que una forma funcional no lineal es más adecuada. Para simplificar las cosas en esta sección, asumimos que solo tenemos un predictor (x ).

    La forma más sencilla de modelar una relación no lineal es transformar la variable de pronóstico (y ) y / o la variable predictora (x ) antes de estimar un modelo de regresión. Si bien esto proporciona una forma funcional no lineal, el modelo sigue siendo lineal en los parámetros. La transformación más utilizada es el logaritmo (natural) (consulte la Sección 3.1).

    A log-log la forma funcional se especifica como [ log y = beta_0 + beta_1 log x + varepsilon. ] En este modelo, la pendiente ( beta_1 ) se puede interpretar como una elasticidad: ( beta_1 ) es el cambio porcentual promedio en (y ) resultante de un aumento del 1% en (x ) . También se pueden especificar otras formas útiles. El log-lineal La forma se especifica solo transformando la variable de pronóstico y la registro lineal La forma se obtiene transformando el predictor.

    Recuerde que para realizar una transformación logarítmica a una variable, todos sus valores observados deben ser mayores que cero. En el caso de que la variable (x ) contenga ceros, usamos la transformación ( log (x + 1) ) es decir, agregamos uno al valor de la variable y luego tomamos logaritmos. Esto tiene un efecto similar a tomar logaritmos pero evita el problema de los ceros. También tiene el efecto secundario ordenado de ceros en la escala original ceros restantes en la escala transformada.

    Hay casos en los que la simple transformación de los datos no será adecuada y es posible que se requiera una especificación más general. Entonces, el modelo que usamos es [y = f (x) + varepsilon ] donde (f ) es una función no lineal. En regresión estándar (lineal), (f (x) = beta_ <0> + beta_ <1> x ). En la especificación de regresión no lineal que sigue, permitimos que (f ) sea una función no lineal más flexible de (x ), en comparación con simplemente una transformación logarítmica u otra.

    Una de las especificaciones más simples es hacer (f ) lineal a trozos. Es decir, introducimos puntos donde la pendiente de (f ) puede cambiar. Estos puntos se llaman nudos. Esto se puede lograr dejando (x_ <1, t> = x ) e introduciendo la variable (x_ <2, t> ) tal que [ begin x_ <2, t> = (x-c) _ + & amp = left < begin 0 & amp text x & lt c x-c & amp text x ge c endderecho. fin] La notación ((x-c) _ + ) significa el valor (x-c ) si es positivo y 0 en caso contrario. Esto obliga a la pendiente a doblarse en el punto (c ). Se pueden incluir curvas adicionales en la relación agregando más variables de la forma anterior.

    Las relaciones lineales por partes construidas de esta manera son un caso especial de splines de regresión. En general, una spline de regresión lineal se obtiene usando [x_ <1> = x quad x_ <2> = (x-c_ <1>) _ + quad dots quad x_ = (x-c_) _ + ] donde (c_ <1>, puntos, c_) son los nudos (los puntos en los que la línea se puede doblar). Seleccionar el número de nudos ( (k-1 )) y dónde deben colocarse puede ser difícil y algo arbitrario. Se encuentran disponibles algunos algoritmos de selección automática de nudos, pero no se utilizan ampliamente.

    Pronóstico con tendencia no lineal

    En la Sección 7.4 se introdujo el ajuste de una tendencia lineal a una serie de tiempo estableciendo (x = t ). La forma más sencilla de ajustar una tendencia no lineal es usar tendencias cuadráticas o de orden superior obtenidas especificando [x_ <1, t> = t, quad x_ <2, t> = t ^ 2, quad dots. ] Sin embargo, no se recomienda que se utilicen tendencias cuadráticas o de orden superior en la predicción. Cuando se extrapolan, los pronósticos resultantes suelen ser poco realistas.

    Un mejor enfoque es utilizar la especificación por partes introducida anteriormente y ajustar una tendencia lineal por partes que se doble en algún momento. Podemos pensar en esto como una tendencia no lineal construida de piezas lineales. Si la tendencia se dobla en el tiempo ( tau ), entonces puede especificarse simplemente reemplazando (x = t ) y (c = tau ) arriba de modo que incluyamos los predictores, [ begin x_ <1, t> & amp = t x_ <2, t> & amp = (t- tau) _ + = left < begin 0 & amp text t & lt tau t- tau & amp text t ge tau endderecho. fin] en el modelo. Si los coeficientes asociados de (x_ <1, t> ) y (x_ <2, t> ) son ( beta_1 ) y ( beta_2 ), entonces ( beta_1 ) da el pendiente de la tendencia antes del tiempo ( tau ), mientras que la pendiente de la línea después del tiempo ( tau ) está dada por ( beta_1 + beta_2 ). Se pueden incluir curvas adicionales en la relación agregando más variables de la forma ((t- tau) _ + ) donde ( tau ) es el "nudo" o punto en el tiempo en el que la línea debe doblarse.

    Ejemplo: tiempos ganadores del maratón de Boston

    Adaptaremos algunos modelos de tendencia a los tiempos ganadores del maratón de Boston para hombres. Primero extraemos los datos de los hombres y convertimos los tiempos ganadores a un valor numérico. El recorrido se alargó (de 24,5 millas a 42,2 millas) en 1924, lo que supuso un salto en los tiempos ganadores, por lo que solo consideramos datos de esa fecha en adelante.

    El panel superior de la Figura 7.20 muestra los tiempos ganadores desde 1924. La serie temporal muestra una tendencia general a la baja, ya que los tiempos ganadores han ido mejorando a lo largo de los años. El panel inferior muestra los residuos de ajustar una tendencia lineal a los datos. El gráfico muestra un patrón no lineal obvio que no ha sido capturado por la tendencia lineal.

    Figura 7.20: Ajustar una tendencia lineal a los tiempos ganadores del maratón de Boston es inadecuado

    Fitting an exponential trend (equivalent to a log-linear regression) to the data can be achieved by transforming the (y) variable so that the model to be fitted is, [ log y_t=eta_0+eta_1 t +varepsilon_t. ] The fitted exponential trend and forecasts are shown in Figure 7.21. Although the exponential trend does not seem to fit the data much better than the linear trend, it perhaps gives a more sensible projection in that the winning times will decrease in the future but at a decaying rate rather than a fixed linear rate.

    The plot of winning times reveals three different periods. There is a lot of volatility in the winning times up to about 1950, with the winning times barely declining. After 1950 there is a clear decrease in times, followed by a flattening out after the 1980s, with the suggestion of an upturn towards the end of the sample. To account for these changes, we specify the years 1950 and 1980 as knots. We should warn here that subjective identification of knots can lead to over-fitting, which can be detrimental to the forecast performance of a model, and should be performed with caution.

    Figure 7.21: Projecting forecasts from linear, exponential and piecewise linear trends for the Boston marathon winning times.

    Figure 7.21 shows the fitted lines and forecasts from linear, exponential and piecewise linear trends. The best forecasts appear to come from the piecewise linear trend.


    Ver el vídeo: (Diciembre 2021).