-
FlexPro
- Auf einen Blick
- Features & Optionen
- Einsatzgebiete
- Alle Vorteile
- Neu in FlexPro 2021
- FlexPro gratis testen
- FlexPro View OEM Freeware
- Kaufberatung
- Login
- Language
- +49 6894 929600
- infoweisang.com
- Google Maps
- Produkte
- News
- Support
- Unternehmen
- Jobs
- Kontakt
- Login
- Language
- +49 6894 929600
- infoweisang.com
- Google Maps
Differenzen zwischen aufeinanderfolgenden Werten
- Dieses Thema hat 2 Antworten sowie 2 Teilnehmer und wurde zuletzt vor vor 11 Jahren, 3 Monaten von Diana Kettner aktualisiert.
-
AutorBeiträge
-
August 27, 2013 um 12:04 pm Uhr #12828Diana KettnerTeilnehmer
Hallo,
gibt es in FPScript eine Funktion, die die Differenzen zwischen den aufeinander folgenden Werten eines Vektors liefert?
Bsp.:
Dim x = {1, 4, 7, 9, 14, 8}
Eine entsprechende Funktion würde für diesen Vektor als Ergebnis
{3, 3, 2, 5, -6}
liefern.
Ich konnte eine solche leider bisher nicht in der Hilfe finden und habe mir bisher mit einer For-Schleife geholfen.
Danke schonmal!
August 27, 2013 um 12:04 pm Uhr #8487Diana KettnerTeilnehmerHallo,
gibt es in FPScript eine Funktion, die die Differenzen zwischen den aufeinander folgenden Werten eines Vektors liefert?
Bsp.:
Dim x = {1, 4, 7, 9, 14, 8}
Eine entsprechende Funktion würde für diesen Vektor als Ergebnis
{3, 3, 2, 5, -6}
liefern.
Ich konnte eine solche leider bisher nicht in der Hilfe finden und habe mir bisher mit einer For-Schleife geholfen.
Danke schonmal!
August 28, 2013 um 8:33 am Uhr #9299Bernhard KantzTeilnehmerEine eigene FPScript-Funktion zur Berechnung der Differenzen gibt es nicht; dies kann leicht über die Vektorisierung mit Hilfe von Indexbereichen erreicht werden. Subtrahiert man zwei Datenreihen voneinander, wird die Differenz elementweise berechnet; stimmen die Längen nicht überein, bestimmt die kürzere das Resultat.
Aus einer Datenreihe kann durch den Indexoperator auf einzelne Werte oder Teildatenreihen zugegriffen werden. Näheres dazu findet sich in der Online-Hilfe unter Daten mathematisch analysieren > Referenz > FPScript-Operatoren > Datenzugriff > Indexoperator (FPScript).
Im konkreten Fall sollen jeweils die folgenden von den aktuellen Einträge einer Datenreihe berechnet werden. Die um eine Position verschobene Datenreihe (ohne erstes Element) erhält man durch den FPScript-Ausdruckx[1,-1]
dabei bezeichnet die 1 als Bereichsanfang das zweite Element (Indizes starten bei 0) und die -1 als Bereichsende (inklusiv) den letzten Eintrag. Davon müssen die Elemente vom ersten bis zum vorletzten abgezogen werden. Damit ergibt sich der Ausdruck
x[1,-1] - x[0,-2]
Statt Bereichen kann man beliebige Datenreihen von Indizes angeben, so dass freie Ausschnitte, Umordnungen, etc. leicht gebildet werden können. Auch kann man solche Ausdrücke auch als Zuweisungsziel (linke Seite) benutzen um Teile der Datenreihe zu überschreiben.
-
AutorBeiträge
- Du musst angemeldet sein, um auf dieses Thema antworten zu können.