Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
ich möchte in mein excel file zusätzlich einen Mittelwert einbinden, der mir für jede spalte den arith. Mittelwert ausgibt.
Meine Messwerte werden wie folgt gespeichert:
1) Sequenz wird gestartet, Inhalte im String Array werden gelöscht
2) in dem 1D array aus strings werden alle Werte der Messgeräte gespeichert (für jedes Gerät mit 'insert to string')
3) die werte werden mit 'write delimited spreadsheet' in ein excel file gelegt
4) Sequenz wird beendet
da ich ja nur zeilenweise speichere, kann ich ja nicht eine ganze spalte betrachten weil der string vor jedem speichern wieder geleert wird (bsp 50 durchläufe)
im Anhang habe ich eine mögliche Lösung angehängt aber damit klappt das ganze nicht, weil ich so nur zeilenweise den Mittelwert ausgebe.
Erstell dir ein "Summen-Array", in dem du nach jedem Messvorgang deine Ergebnisse aufaddierst. Am Ende dann durch die Anzahl Messvorgänge teilen und das Mittelwert Array wegspeichern.
Mit "Write Delimited Spreadsheet" erzeugst du eine CSV-Datei, keine Excel-Datei!
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
deine Datei die du erzeugst kann Excel öffnen, es ist aber eine Comma-Seperated-Values (CSV) Datei. Excel ist meistens standardmäßig damit verknüpft, es bleibt aber ein eigenes Format.
Du musst dir entweder einen Mittelwert mitschreiben oder die Datei am Ende einmal auslesen und dir die Spalten selbst berechnen.
Grüße Timo
Justieren ist dem Gerät sagen was es anzeigen soll, kalibrieren ist die Kontrolle dieser Anzeige. Eichen ist ein längerer Prüfprozess und darf nur das Eichamt!
(26.03.2019 15:12 )jg schrieb: Erstell dir ein "Summen-Array", in dem du nach jedem Messvorgang deine Ergebnisse aufaddierst. Am Ende dann durch die Anzahl Messvorgänge teilen und das Mittelwert Array wegspeichern.
Mit "Write Delimited Spreadsheet" erzeugst du eine CSV-Datei, keine Excel-Datei!
Gruß, Jens
aber ich speichere ja trotzdem immer noch zeilenweise, das heisst der string der an write spreadsheet ankommt, immer nur eine Zeile Daten enthält. wenn ich jetzt mal davon ausgehe dass ich das mit dem summen array gemacht und die werte berechnet habe bekomme ich dann jede Zeile den Mittelwert vom 1. durchlauf, 1.-2. durchlauf, 1.-3. usw?
(26.03.2019 15:32 )ares2013 schrieb: aber ich speichere ja trotzdem immer noch zeilenweise, das heisst der string der an write spreadsheet ankommt, immer nur eine Zeile Daten enthält. wenn ich jetzt mal davon ausgehe dass ich das mit dem summen array gemacht und die werte berechnet habe bekomme ich dann jede Zeile den Mittelwert vom 1. durchlauf, 1.-2. durchlauf, 1.-3. usw?
Richtig erkannt. Wann du dann diese Mittelwerte wegspeicherst, das bleibt dir überlassen. Im Optimalfall natürlich nur 1x am Ende des gesamten Messvorgangs.
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
(26.03.2019 15:32 )ares2013 schrieb: aber ich speichere ja trotzdem immer noch zeilenweise, das heisst der string der an write spreadsheet ankommt, immer nur eine Zeile Daten enthält. wenn ich jetzt mal davon ausgehe dass ich das mit dem summen array gemacht und die werte berechnet habe bekomme ich dann jede Zeile den Mittelwert vom 1. durchlauf, 1.-2. durchlauf, 1.-3. usw?
Richtig erkannt. Wann du dann diese Mittelwerte wegspeicherst, das bleibt dir überlassen. Im Optimalfall natürlich nur 1x am Ende des gesamten Messvorgangs.
Gruß, Jens
Wie muss ich vorgehen um das Ergebnis nur einmal am Ende zu erhalten? einfach verketten würde ja in jedem durchlauf speichern aber das wär im moment nur das einzige was mir einfällt
Zitat:Wie muss ich vorgehen um das Ergebnis nur einmal am Ende zu erhalten?
Ergibt sich die Antwort nicht schon aus der Frage selbst?
Einfach am Ende deines Programms (THINK DATAFLOW!) die berechneten Mittelwerte als letzte Zeile speichern…
ich hab mir überlegt jede neue Zeile mit insert into array hinzuzufügen, aber da muss ich ja einen index (row) angeben. wie definiere ich den index so dass er mir automatisch bei jedem durchlauf eine neue Zeile hinzufügt?
27.03.2019, 10:27 (Dieser Beitrag wurde zuletzt bearbeitet: 27.03.2019 11:58 von GerdW.)
wenn du stattdessen BuildArray verwendest, hast du das Problem nicht...
(Oder gleich die Autoindizierung beim Schleifentunnel nutzen!)
ich habe ein array dass sich bei jedem durchlauf der schleife ändert, weil am Anfang der Sequenz die Elemente im Array auf 0 zurückgesetzt werden und dann neu reingeschrieben wird.
wenn ich das Summenarray bilde möchte ich ja eigentlich jedes mal den gleichen input für build array aber am Ausgang dann für jeden durchlauf eine neue Zeile.
wenn ich auto index benutze bekomme ich ein 4d array als output (ich bräuchte eigentlich ein 2d array)
und wenn ich den output mit reshape array 'formatiere' bekomme ich ein 1d array..
wie 'formatiere' ich das 4d array zu einem 2d array ohne dass Daten verloren gehen?