FlexPro
HistoryBase
Engineering
Training
Downloads
FlexPro Support
Knowledge
Community
About us
References
Jobs
General Contact
List Of Retailers
FlexPro Support
EN
DE
FR
Placeholder
Products and Solutions
Support and Downloads
Company
Magazine
Contact Us
Language
MyWeisang

Account settings

Topic

Arrays und Schleifen

Home page Community FPScript Arrays and loops

Viewing 3 posts - 1 through 3 (of 3 total)
  • Author
    Posts
  • #33219
    Markus Klamke
    Participant

    Hallo
    [list]
    [li]Ist es möglich aus jeweils dem i-ten Element von jedem Datensatz je einen neuen Datensatz zu erzeugen?
    Bsp.:
    Erstellte Datensätze
    Datensatz 1 : (1,4,7)
    Datensatz 2 : (2,5,8)
    Datensatz 3 : (3,6,9)

    Daraus würde ich gern mit einer Schleife diese Datensätze erstellen. Also das jeweils die ersten Elemente der Ausgangsdatensätze in einem neuen Datensatz stehen.

    Datensatz 1. Element (1,2,3)
    Datensatz 2. Element (4,5,6)
    Datensatz 3. Element (7,8,9)

    [li]Und als weitere Aufgabe würde ich gern aus diesen Datensätzen und einem weiteren Datensatz Signale erstellen.

    Bsp.:

    Datensatz 1. Element (1,2,3)
    Datensatz 2. Element (4,5,6)
    Datensatz 3. Element (7,8,9)

    Datensatz Signal (10,20,30)

    Daraus möchte ich 3 Signale erstellen nach der Art

    Signal 1
    (10,1)
    (10,2)
    (10,3)

    Signal 2
    (20,4)
    (20,5)
    (20,6)

    Signal 3
    (30,7)
    (30,8)
    (30,9)

    Können Sie mir bei diesen Aufgaben helfen?
    [/list]

    #33221
    Markus Klamke
    Participant

    Hallo
    [list]
    [li]Ist es möglich aus jeweils dem i-ten Element von jedem Datensatz je einen neuen Datensatz zu erzeugen?
    Bsp.:
    Erstellte Datensätze
    Datensatz 1 : (1,4,7)
    Datensatz 2 : (2,5,8)
    Datensatz 3 : (3,6,9)

    Daraus würde ich gern mit einer Schleife diese Datensätze erstellen. Also das jeweils die ersten Elemente der Ausgangsdatensätze in einem neuen Datensatz stehen.

    Datensatz 1. Element (1,2,3)
    Datensatz 2. Element (4,5,6)
    Datensatz 3. Element (7,8,9)

    [li]Und als weitere Aufgabe würde ich gern aus diesen Datensätzen und einem weiteren Datensatz Signale erstellen.

    Bsp.:

    Datensatz 1. Element (1,2,3)
    Datensatz 2. Element (4,5,6)
    Datensatz 3. Element (7,8,9)

    Datensatz Signal (10,20,30)

    Daraus möchte ich 3 Signale erstellen nach der Art

    Signal 1
    (10,1)
    (10,2)
    (10,3)

    Signal 2
    (20,4)
    (20,5)
    (20,6)

    Signal 3
    (30,7)
    (30,8)
    (30,9)

    Können Sie mir bei diesen Aufgaben helfen?
    [/list]

    #33220
    Bernhard Kantz
    Participant

    First you should be aware that each formula can return only one result (besides if you are using a list result).
    The shortest way to solve the first issue is something like this (we assume that all datasets have the same length):
    [code]
    Result = TransposeMatrix({ Dataset1, Dataset2, Dataset3})
    [/code]
    The result can than be found in Result[0], Result[1] and Result[2]. If you only need a specific index you could proceed like this:
    Create a new formula called ‘DataSetFromIndex’:
    [code]
    Arguments Datasets, Idx
    Dim MaxLen, Result

    // To simplify things we assume that all datasets have the same length
    MaxLen = NumberOfRows($Datasets[0]$)

    // pre-allocate the result
    Result = 0. # NumberOfRows(Datasets)

    For Each Row i In Datasets Do
    Result[i] = ($Datasets[i]$)[Idx]
    end

    Result
    [/code]
    Then call it from another formula like this (for the index 1):
    [code]DatasetFromIndex({ “Dataset1”, “Dataset2”, “Dataset3” }, 1)[/code]
    The second issue could be solved like this (assume Sig for your Signal, to avoid name clashes with the built-in function Signal):
    [code]Signal(Dataset1, Sig[0] # NumberOfRows(Dataset1))
    Signal(Dataset2, Sig[1] # NumberOfRows(Dataset2))

    [/code]
    Support
    support@weisang.com

Viewing 3 posts - 1 through 3 (of 3 total)
  • You must be logged in to reply to this topic.