13 votos

Calcular la incertidumbre de la pendiente de la regresión lineal en función de la incertidumbre de los datos

¿Cómo calcular la incertidumbre de la pendiente de la regresión lineal basándose en la incertidumbre de los datos (posiblemente en Excel/Mathematica)?

Ejemplo: Example plot Tengamos los puntos de datos (0,0), (1,2), (2,4), (3,6), (4,8), ... (8, 16), pero cada valor de y tiene una incertidumbre de 4. La mayoría de las funciones que encontré calcularían la incertidumbre como 0, ya que los puntos coinciden perfectamente con la función y=2x. Pero, como se muestra en la imagen, y=x/2 también coincide con los puntos. Es un ejemplo exagerado, pero espero que muestre lo que necesito.

EDIT: Si trato de explicar un poco más, mientras que cada punto en el ejemplo tiene un cierto valor de y, pretendemos que no sabemos si es cierto. Por ejemplo el primer punto (0,0) podría ser en realidad (0,6) o (0,-6) o cualquier cosa intermedia. Pregunto si hay algún algoritmo en alguno de los problemas populares que tenga en cuenta esto. En el ejemplo los puntos (0,6), (1,6,5), (2,7), (3,7,5), (4,8), ... (8, 10) todavía caen en el rango de incertidumbre, por lo que podrían ser los puntos correctos y la línea que conecta esos puntos tiene una ecuación: y = x/2 + 6, mientras que la ecuación que obtenemos de no factorizar las incertidumbres tiene la ecuación: y=2x + 0. Así que la incertidumbre de k es 1,5 y de n es 6.

TL;DR: En la imagen, hay una línea y=2x que está calculada usando el ajuste de mínimos cuadrados y se ajusta a los datos perfectamente. Estoy tratando de encontrar cuánto pueden cambiar k y n en y=kx + n y aún así ajustarse a los datos si conocemos la incertidumbre en los valores de y. En mi ejemplo, la incertidumbre de k es de 1,5 y en n es de 6. En la imagen está la línea de "mejor" ajuste y una línea que apenas se ajusta a los puntos.

1 votos

Si tiene incertidumbre en su $x$ Por lo general, no debería utilizar la regresión lineal ordinaria porque está sesgada (aunque las pequeñas incertidumbres darán lugar a un pequeño sesgo; tal vez no le importe tanto). ¿Las incertidumbres de tus y's son siempre constantes o varían? ¿Cómo está ajustando su línea?

0 votos

Pregunto sobre todo por la incertidumbre en y. Pero me gustaría que la solución considerara también la incertidumbre en las x. Generalmente no son constantes, pero una solución que requiera que sean constantes estaría bien también, traté de ajustar con linearfit, fit, findfit en mathematica y linest (y una función personalizada que encontré que pondera los valores por incertidumbres) en excel.

0 votos

¿Puede explicar lo más claramente posible cómo se relacionan los valores de "incertidumbre" con lo que sucedería, por ejemplo, en una repetición del experimento? es decir, ¿qué representan exactamente esas incertidumbres?

8voto

Calvin Puntos 111

Utilizo a menudo este formato GDAL/OGR VRT con archivos SQLite:

<OGRVRTDataSource>
    <OGRVRTLayer name="test">
       <SrcDataSource>path/testwkt.sqlite</SrcDataSource> 
       <SrcLayer>geom</SrcLayer> 
       <GeometryType>wkbPolygon</GeometryType>
       <LayerSRS>EPSG:31370</LayerSRS>
       <GeometryField encoding="WKT" field="geom"/> 
    </OGRVRTLayer>       
</OGRVRTDataSource>

Y puedo utilizar el mismo formato para las bases de datos Access en Mac OS X (GDAL 1.10) con el Controlador ODBC real para bases de datos Access (Microsoft Access 97 o posterior, incluyendo Access 2007, y puedo leer la conexión ODBC en QGIS) así que supongo que es posible en Windows...

 <OGRVRTDataSource>
    <OGRVRTLayer name="my_layer">
       <SrcDataSource>ODBC:test</SrcDataSource>
       <SrcLayer>COORDO</SrcLayer>
       <GeometryType>wkbPoint</GeometryType>
       <GeometryField g="WKT" field="wkt"//>
    </OGRVRTLayer>
 </OGRVRTDataSource>

enter image description here

Pero creo que este formato XML es difícil para los usuarios comunes y de GDAL: ODBC RDBMS

Starting with GDAL 1.10, and on Windows provided that the "Microsoft Access Driver (*.mdb)" ODBC 
driver is installed, non-spatial MS Access Databases (not Personnal Geodabases or Geomedia databases) 
can be opened directly by their filenames. 

Así que, teóricamente, en Windows, puedes abrir una base de datos Access en QGIS (si utiliza GDAL 1.10 y no 1.9.x) pero el formato WKT debe ser tratado (?).

4voto

D Langhorne Puntos 1

Hice un muestreo directo ingenuo con este sencillo código en Python:

import random
import numpy as np
import pylab
def uncreg(x, y, xu, yu, N=100000):
    out = np.zeros((N, 2))
    for n in xrange(N):
        tx = [s+random.uniform(-xu, xu) for s in x]
        ty = [s+random.uniform(-yu, yu) for s in y]
        a, b = np.linalg.lstsq(np.vstack([tx, np.ones(len(x))]).T, ty)[0]
        out[n, 0:2] = [a, b]
    return out
if __name__ == "__main__":
    P = uncreg(np.arange(0, 8.01), np.arange(0, 16.01, 2), 0.1, 6.)
    H, xedges, yedges = np.histogram2d(P[:, 0], P[:, 1], bins=(50, 50))
    pylab.imshow(H, interpolation='nearest', origin='low', aspect='auto',
                 extent=[xedges[0], xedges[-1], yedges[0], yedges[-1]])

y conseguí esto: Histogram of direct sampling results

Por supuesto que se puede minar el P para los datos que desee, o cambiar las distribuciones de incertidumbre.

0voto

Brendan Foote Puntos 624

Ya estuve en la misma cacería y creo que este puede ser un punto de partida útil. La función macro de Excel da términos de ajuste lineal y sus incertidumbres basadas en puntos tabulares y la incertidumbre para cada punto en ambas ordenadas. Tal vez busque el documento en el que se basa para decidir si quiere implementarlo en un entorno diferente, modificarlo, etc. (Hay algo de trabajo de campo hecho para Mathematica.) Parece tener una buena documentación en la superficie, pero no he abierto la macro para ver qué tan bien anotada está.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X