Ich lese in einer Datei mit zwei Spalten mit numerischen Daten. Sei die erste Spalte 'x' und die zweite Spalte 'y'.Python diskrete Differenzierung
Die Daten in 'x' sind nicht gleichmäßig verteilt. Das heißt, es geht ungefähr so:
2,4 2,6 2,7 3,0 3,2 3,5 ...
Die Daten offensichtlich endlich ist. Es hat einen Anfangs- und einen Endwert.
Ich muss "Diskontinuitäten" in diesen Daten finden. Das mag ich die Daten meiner Differenzierung tun: dy/dx
ich eine Suche gemacht habe, aber alle Differenzierung Antworten fand ich eine analytische Funktion beinhalten, wie zum Beispiel y = x ** 2 + 1
Meine Daten sind diskret und passen nicht zu einer analytischen Funktion. Ich muss die Ableitung für jeden Wert von 'x' über diese Daten finden, wobei zu beachten ist, dass 'x' nicht gleichmäßig verteilt ist.
Angenommen, ich habe die Daten aus meiner Datendatei eingelesen und in den Variablen 'x' und 'y' gespeichert.
Jetzt möchte ich dy/dx, und ich möchte dy/dx vs x plotten.
Was kann ich "importieren", das dieses Derivat macht? Oder muss ich den Algorithmus selbst schreiben?
Erstens, was hast du bisher versucht? Bitte posten Sie Ihren Code. Das hängt wirklich davon ab, was Sie mit einer Diskontinuität meinen. Wie definierst du das? Wollen Sie nur mit dem Auge feststellen, ob ein Sprung in der Ableitung aus der Darstellung besteht? – James
Ich habe nichts versucht, weil alle Unterscheidungsroutinen, die ich in SciPy und anderen Paketen gefunden habe, eine einheitliche Schrittgröße = h erforderten. Meine Schrittgröße ist nicht einheitlich, wie ich ursprünglich sagte. Ich brauche nur etwas, um die Differenzierung des Datums zu tun. "Warum" ist nicht wichtig. – Mannix
Sie müssen definieren, was eine Unstetigkeit ist. Dann können Sie darüber nachdenken, wie Sie die Prüfung durchführen - am wahrscheinlichsten mit einem nicht zu schwierig handgeschriebenen Code. –