NEWS
10 Werte, sortieren und nur die mittleren 6 nehmen
-
@oliverio ja noch gar nicht irgendwie... ich habe mir einen Datenpunkt angelegt als Array und dann habe ich einen Datenpunkt aus MQTT der alle x Sekunden einen Wert bringt. Diesen MQTT Wert versucht ich gerade in einen "Array" zu bringen ... aber mit Blockly
Korrektur, da ich es mit Datenpunkt Array gar nicht hinbekommen habe, habe ich es erst mal mit einem String versucht (zusammengesetzt eben)
-
@michl75 sagte in 10 Werte, sortieren und nur die mittleren 6 nehmen:
Na ich esse erstmal was und dann schau ich mir deine Infos genauer an...
ich denke da wären immer nur 10 Werte drin?
Jetzt wird es komplexer.Entweder die Liste auf 10 Werte begrenzen, oder die Länge der Liste auslesen und dann mehr (????) Datenpunkte oben und unten (Ausreißer??) entfernen
-
@homoran said in 10 Werte, sortieren und nur die mittleren 6 nehmen:
ich denke da wären immer nur 10 Werte drin?
ja war mein Ziel... aber die muss ich ja erst aus dem MQTT Datenpunkt sammeln... und da fängts schon an das ich's nicht hinbekommen
@homoran said in 10 Werte, sortieren und nur die mittleren 6 nehmen:
Entweder die Liste auf 10 Werte begrenzen, oder die Länge der Liste auslesen und dann mehr (????) Datenpunkte oben und unten (Ausreißer??) entfernen
Ausreißer entfernen ... darum wollte ich eben 10 mal sammeln, dann sortieren... die ersten beiden weg und die letzten beiden auch --- Rest dann 6 Stück und damit den Durchschnitt machen
-
@michl75 auf die Schnelle mit der heißen Nadel:

ist es das was ihr suchet?
Hab hier mal 20 als Listenlänge vorgegeben und der Wert wird auch erst berechnet wenn 21 Mwssungen vorliegen
-
erzähle mal doch was so dein gesamtziel ist. bisher hast du nur einen kleinen ausschnitt erzählt. evtl bist du ja schon vom ansatz falsch unterwegs und es gibt einen einfacheren weg.
was für daten möchtest du den sammeln?
warum willst du die obersten und untersten abschneiden/webschmeißen?
und aus dem Rest den durchschnitt berechnen.
Wenn wir den Gesamtkontext wissen kann man besser helfen.
du hast halt eine detailfrage gestellt und hast eine detailantwort erhalten.
aus deinen weiteren posts entnehme ich aber, das das gesamtkonstrukt noch nicht klar ist. -
@oliverio soweit ich das aus anderen Threads zusammenreime hat er eine (gewöhnungsbedürftige) pH-Elektrode im Teich und möchte diese Kurve glätten.
@oliverio sagte in 10 Werte, sortieren und nur die mittleren 6 nehmen:
warum willst du die obersten und untersten abschneiden/webschmeißen?
Ausreißerbereinigung
-
tsts,
selbst wenn ich es weiß lass ich solche sachen meinen kunden beantworten (@michl75
)
das schafft dann ein gemeinsames verständnis und commitment
aber dann kann er es ja kurz bestätigen das das so ist.
ich merk mir nicht immer die namen zu den threads wer da so fragen stellt -
@oliverio na dann bin ich mal raus
-
halt halt, wenn er blockly will, bin ich raus

-
@michl75 sagte: 10 mal sammeln, dann sortieren... die ersten beiden weg und die letzten beiden auch --- Rest dann 6 Stück und damit den Durchschnitt machen
Vorschlag:

Nimmt immer die 10 letzten Werte (gleitend), sortiert diese und lässt die Ausreißer weg.
-
Ich melde mich gleich ... ich muss essen kosten ... Kinder....
Schaue es mir an so schnell ich kann ... schon mal Danke!EDIT
Frau nicht zuhause, ich bin heute der Herr im Haus
Also .. ja richtig, ich versuche die Werte des pH-Sensors weiter zu "glätten" .. bisher nehme ich 10 Werte und dann geteilt durch 10. Aber dieser Sensor bringt mich noch ins Grab. Daher dieser Versuch, wie er auch oft in so diversen Anleitungen geschrieben ist.
@paul53 das werde ich eben noch probieren sofern mich Kinder nicht weiter auf Trapp halten ... Ansonsten morgen Früh ...
Nochmals danke an alle!
-
@lobomau sagte in 10 Werte, sortieren und nur die mittleren 6 nehmen:
@guergen offtopic --- versuchst du es mit dem handy? Hab da auch immer vorbidden

Nein am Desktop
-
@paul53 said in 10 Werte, sortieren und nur die mittleren 6 nehmen:
Nimmt immer die 10 letzten Werte (gleitend), sortiert diese und lässt die Ausreißer weg.
So habe das eben noch ausprobiert. ....
Frage dazu:
Muss man die Werte nicht in einem Datenpunkt speichern ? Also Werte 1...2...3...4 ... weil ja jedes mal wenn Trigger für den Sensor ausgelöst wird eine "neue Instanz" ausgelöst wird und die Daten im einer Variable weg sind bzw neu gesetzt werden?und
Wie kann ich die Liste leeren, wenn ich den Mittelwert errechnet habe und von vorne anfangen möchte?
Und das ist derzeit das Ergebnis:

-
@michl75 sagte: Wie kann ich die Liste leeren, wenn ich den Mittelwert errechnet habe und von vorne anfangen möchte?
Du möchtest den Mittelwert nicht gleitend ermitteln, sondern wenn 10 Werte eingelesen wurden, von vorn beginnen?

In dem Fall braucht man die Listenwerte nicht in einem Datenpunkt speichern, denn sie bleiben bis zum nächsten Skriptstart erhalten.
-
@paul53 Super... funktioniert nun viel besser als wenn ich "nur" 10 Werte sammel und diese dann auch durch 10 Teile, weil einfach diese Ausreißer da sind. Mit dieser Version habe ich deutlich bessere Werte ....
Vielen Dank!
Hab's noch biss angepasst, das ich auch Zwischenstände erhalte...

Werde es zur "Dokumentation des pH-Sensors" auch hinzufügen....
Nochmals vielen Dank für die Unterstützung!
Viele Grüße
M.