ich benötige etwas Austausch zu einem mathematischen Problem, da ich selbst noch nicht so genau weiß wonach ich suchen muss:
Mein Ziel ist es mit einem Programm ASCII-Daten einzulesen, um durch diese eine Regressionskurve zu legen. Nun habe ich bereits eifrig GOOGLE benutzt, um die Worte "Regressionskurve + Python" zu suchen. Dabei stieß ich immer auf lineare oder polynomische Ansätze. Letzteren habe ich auch einmal auf ein Beispiel angewendet:
Code: Alles auswählen
X Y
2.57 2.50
2.5 2.8
2.0 3.3
1.5 3.45
1.0 3.50
herrührt.
Code: Alles auswählen
from math import *
import scipy, pylab
import scipy.optimize
import numpy as np
from numpy import linspace, polyfit, polyval
import matplotlib.pyplot as plt
import os
DataX = [1, 1.5, 2, 2.5, 2.57]
DataY = [3.5, 3.45, 3.3, 2.8, 2.5]
NOfPoints = 100
XNew = linspace(float(DataX[0]), float(DataX[-1]), NOfPoints)
PolyCoeffs = np.polyfit(DataX, DataY, 2)
Polynom = np.poly1d(np.polyfit(DataX, DataY, 2))
x = list()
y = list()
for i in range(NOfPoints):
xval = XNew[i]
x.append( xval )
y.append( Polynom(xval) )
plt.plot(DataX, DataY, '.-', x, y, '--')
plt.show()
Vielen Dank.