por - libreria scipy python
Interpolación de pitón (1)
Tengo un conjunto de datos que se parece a:
Table-1
X1 | Y1
------+--------
0.1 | 0.52147
0.02 | 0.8879
0.08 | 0.901
0.11 | 1.55
0.15 | 1.82
0.152 | 1.95
Table-2
X2 | Y2
-----+------
0.2 | 0.11
0.21 | 0.112
0.34 | 0.120
0.33 | 1.121
Tengo que interpolar el valor Y2
de la Tabla-2 para los valores X1
de la Tabla-1, es decir, necesito encontrar los valores de Y2
para los siguientes valores de X
:
X1 | Y2
-------+-------
0.1 |
0.02 |
0.08 |
0.11 |
0.15 |
0.152 |
Nota: Tanto la Tabla 1 como la 2 tienen intervalos desiguales. El número de entradas (X, Y) será diferente, por ejemplo, aquí tenemos 6 entradas (X1, Y1) en la Tabla-1 y solo 4 (X2, Y2) en la Tabla-2.
¿Qué algoritmo de interpolación debo usar en Numpy y cómo proceder?
numpy.interp
parece ser la función que desea: pase su X1
como primer argumento x, su X2
como segundo argumento xp, su Y2
como tercer argumento fp, y obtendrá los valores Y correspondientes a las coordenadas X1
.
Y2_at_X1 = np.interp(X1, X2, Y2)
Supongo que desea ignorar completamente los valores Y1
existentes. Esto es lo que hace el fragmento anterior. De lo contrario, tendrá que aclarar su pregunta para explicar qué papel podría tener para Y1
.
Si desea más que la interpolación lineal, le sugiero que mire a scipy.interpolate
y su tutorial lugar de tratar de estirar más allá de su simplicidad ;-).