FlexPro Forum – Discuss Your Topic!

Datenreihe aneinanderhängen

Home > Community > FPScript > Datenreihe aneinanderhängen

Viewing 5 posts - 1 through 5 (of 5 total)
  • Author
    Posts
  • #12871
    Michael KaufmannMichael Kaufmann
    Participant

    Hallo,

    ich habe folgenden Datenreihen

    X
    0 5,25
    1 3,75
    2 1,25

    Y
    0 10,2
    1 8,4
    2 7,9

    Wie mache ich daraus

    Z
    0 5,25 10,2
    1 3,75 8,4
    2 1,25 7,9

    Viele Grüße

    Michael

    #8531
    Michael KaufmannMichael Kaufmann
    Participant

    Hallo,

    ich habe folgenden Datenreihen

    X
    0 5,25
    1 3,75
    2 1,25

    Y
    0 10,2
    1 8,4
    2 7,9

    Wie mache ich daraus

    Z
    0 5,25 10,2
    1 3,75 8,4
    2 1,25 7,9

    Viele Grüße

    Michael

    #9376
    Bernhard KantzBernhard Kantz
    Participant

    Falls ich Sie richtig verstanden habe, möchten Sie 2 Datenreihen “datenreihe1” und “datenreihe2” zu einer Matrix zusammenfügen. Dies lässt sich in FPScript mit dem Bündelungsoperator realisieren:

    {datenreihe1, datenreihe2}

    Man kann auch beide Datenreihen markieren > Maus Rechtsklick > “Zu Datenmatrix zusammenführen” um das gewünschte zu realisieren.

    #9377
    Michael KaufmannMichael Kaufmann
    Participant

    Hallo,

    ich will das Ganze nicht auf Objekte anwenden sondern auf Variablen in einem fpskript.
    Hier mal ein Auszug daraus:

    // Deklaration von Variablen für die Ausgabe
    Dim Output, Output_temp_0, Output_temp_1, Output_temp_2, Output_temp_3, Output_temp_4

    // Initialisierung von Variablen für die Ausgabe
    Output_temp_0 = FloatingPoint32 0#NumberOfRows(Status)
    Output_temp_1 = FloatingPoint32 0#NumberOfRows(Status)
    Output_temp_2 = FloatingPoint32 0#NumberOfRows(Status)
    Output_temp_3 = FloatingPoint32 0#NumberOfRows(Status)
    //Output_temp_4 = FloatingPoint32 0#NumberOfRows(Status)

    // Initialisierung von Variablen für die Ausgabe
    For i = 0 To NumberOfRows(Status) – 1 Do
    Output_temp_0
    = 0
    Output_temp_1 = 0
    Output_temp_2 = 0
    Output_temp_3 = 0
    // Output_temp_4 = 0
    End

    Dim list = NonLinCurveFit(MODEL_GROWTH_GOMPERTZ, …
    temp = list.[“Solution”]
    Output_temp_4 = temp

    // Kurven aproximieren
    For i = 1 To Counter_1 – 1 Do
    list = NonLinCurveFit(MODEL_GROWTH_GOMPERTZ, …
    temp = list.[“Solution”]
    Output_temp_4 = Output_temp_4 : temp
    End

    // Temporäre Datenreihe zu Datenmatrix zusammenfassen
    //Output = FloatingPoint32 {Output_temp_0, Output_temp_1, Output_temp_2, Output_temp_3, Output_temp_4, Output_temp_5, Output_temp_6, Output_temp_7}

    Output_temp_4

    Bei der Operation Output_temp_4 = Output_temp_4 : temp wird das Ergebnis untereinander und nicht wie gewollt nebeneinander angehängt. Es wird also keine Matrix erstellt sondern lediglich die Datenreihe verlängert.

    #9378
    Bernhard KantzBernhard Kantz
    Participant

    Voraussetzung für das Zusammensetzen mehrerer Datensätze zu einer Matrix ist deren übereinstimmende Länge. Wie in Ihrer Funktion können Sie die Datenreihen verketten und danach mittels der FPScript-Funktion Reshape() den Datensatz in eine Matrix umformen.
    Einfacher geht es mit folgendem Trick: Initialisieren Sie die Variable in der Form

    
    Output_temp_4 = { temp }
    

    so wird eine Matrix mit einer Datenreihe angelegt. Wenn man diese mit weiteren Datenreihen (mittels ‘:’) verkettet, werden diese als neue Spalten angehängt.

Viewing 5 posts - 1 through 5 (of 5 total)
  • The topic ‘Datenreihe aneinanderhängen’ is closed to new replies.