Löschen einzelner Werte möglich?
Moderator: Co-Administratoren
Löschen einzelner Werte möglich?
Hallo,
wie kann ich einzelne "Ausreißer" in den Werten löschen?
Per PC-Applikation beschreibe ich Systemvariable von extern, so dass sich schon das ein oder andere Mal fehlerhafte Werte einschleichen.
Viele Grüße,
Max
wie kann ich einzelne "Ausreißer" in den Werten löschen?
Per PC-Applikation beschreibe ich Systemvariable von extern, so dass sich schon das ein oder andere Mal fehlerhafte Werte einschleichen.
Viele Grüße,
Max
- Baxxy
- Beiträge: 10845
- Registriert: 18.12.2018, 15:45
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 610 Mal
- Danksagung erhalten: 2229 Mal
Re: Löschen einzelner Werte möglich?
Wo ist das Problem?
- Zuerst notiert man sich den genauen Zeitpunkt der "Ausreißer" auf einen Zettel (TT.MM.JJJJ hh:mm:ss)...
- dann Datenpunktliste --> den Datenpunkt mit den "Ausreißern" auswählen --> Werkzeuge
- dann Zeitbereich löschen auswählen und den notierten Zeitpunkt (- ein paar Sekunden ) bei "Beginnzeitpunkt" und (+ ein paar Sekunden ) bei "Endzeitpunkt" eintragen
- Zeitbereich löschen anklicken... fertig
Grüße... Baxxy
- Raspberry Pi 4 als Homematic-Zentrale - Tipps und Informationen
- Analysescript für genutzte Funk-Adressen, Funkmodul-Hardware und Zentralen Hardware
- NANO CUL 868MHz - Stick zum AskSin Analyzer XS umflashen (Anleitung für ArduinoIDE unter Windows)
- Firmware Updates für IP-Aktoren / Sensoren... Info's, Tipps und Sonstiges
- CCU funkt nicht - CarrierSense (CS) Probleme erkennen und lösen
-
- Beiträge: 184
- Registriert: 14.03.2017, 10:29
- Hat sich bedankt: 29 Mal
- Danksagung erhalten: 1 Mal
Re: Löschen einzelner Werte möglich?
Danke für den Tipp!
Ich suche einen Weg um Werte zu löschen, die genau den Wert „0“ haben.
Das geschieht realtiv oft, sodass das Löschen über Timecodes langwierig ist.
Gibt es da einen anderen (komfortablen) Weg?
Ich suche einen Weg um Werte zu löschen, die genau den Wert „0“ haben.
Das geschieht realtiv oft, sodass das Löschen über Timecodes langwierig ist.
Gibt es da einen anderen (komfortablen) Weg?
——-
Raspberrymatic auf einem Raspi 3B, Funkmodul HM-MOD-RPI-PCB
Raspberrymatic auf einem Raspi 3B, Funkmodul HM-MOD-RPI-PCB
-
- Beiträge: 1796
- Registriert: 03.11.2010, 10:25
- System: CCU
- Wohnort: Aachen
- Hat sich bedankt: 58 Mal
- Danksagung erhalten: 262 Mal
- Kontaktdaten:
Re: Löschen einzelner Werte möglich?
Über Werkzeuge → Skriptumgebung ist fast alles möglich.
Achtung: Unbedingt vorher ein Backup der Datenbank erstellen!
Achtung: Unbedingt vorher ein Backup der Datenbank erstellen!
Code: Alles auswählen
// Zeitbereich
begin=Date.parse("dd.MM.yyyy", "28.04.2020")
end=Date.parse("dd.MM.yyyy", "30.04.2020")
println "Anfang: $begin"
println "Ende: $end"
// Historian-ID vom Datenpunkt
dataPointID=27
dataPoint=database.getDataPoint(dataPointID)
println "Datenpunkt: $dataPoint.displayName"
// Zeitreihe laden
timeSeries=database.getTimeSeriesRaw(dataPoint, begin, end)
println "Einträge: $timeSeries.size"
// Zeitreihe filtern (Beispiel: Alle Werte<40 sollen gelöscht werden.)
filteredTimeSeries=new mdz.hc.timeseries.TimeSeries(dataPoint)
timeSeries.each { entry ->
// Wert OK?
if (entry.value>=40) {
// dann übernehmen
filteredTimeSeries.add(entry)
}
}
println "Gefilterte Einträge: $filteredTimeSeries.size"
// Zeitbereich ersetzen
database.replaceTimeSeries(dataPoint, filteredTimeSeries, begin, end)
-
- Beiträge: 184
- Registriert: 14.03.2017, 10:29
- Hat sich bedankt: 29 Mal
- Danksagung erhalten: 1 Mal
Re: Löschen einzelner Werte möglich?
Danke!!!
Aber vorsicht an alle DAUs, dass es Euch nicht wie mir geht!
Dass es ein Größer-Zeichen und Kleiner-Zeichen gibt hat seinen Sinn!
Ich wollte bspw. alle Werte entfernen, die Null sind und habe statt „>=40“ „==0“ angegeben mit dem Effekt, dass die ganze Datenreihe des Datenpunktes genullt wurde!
Wie hätte ich es denn machen müssen? Also eine „Ungleich Null“ Bedingung)
Hab aber natürlich ein Backup gemacht vorher
Aber vorsicht an alle DAUs, dass es Euch nicht wie mir geht!
Dass es ein Größer-Zeichen und Kleiner-Zeichen gibt hat seinen Sinn!
Ich wollte bspw. alle Werte entfernen, die Null sind und habe statt „>=40“ „==0“ angegeben mit dem Effekt, dass die ganze Datenreihe des Datenpunktes genullt wurde!
Wie hätte ich es denn machen müssen? Also eine „Ungleich Null“ Bedingung)
Hab aber natürlich ein Backup gemacht vorher
——-
Raspberrymatic auf einem Raspi 3B, Funkmodul HM-MOD-RPI-PCB
Raspberrymatic auf einem Raspi 3B, Funkmodul HM-MOD-RPI-PCB
- Baxxy
- Beiträge: 10845
- Registriert: 18.12.2018, 15:45
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 610 Mal
- Danksagung erhalten: 2229 Mal
Re: Löschen einzelner Werte möglich?
Ohne jetzt sicher zu sein... !
Ich denke
Code: Alles auswählen
if (entry.value>0)
Damit sollten alle Werte >0 behalten werden, der Rest fliegt raus.
Grüße... Baxxy
- Raspberry Pi 4 als Homematic-Zentrale - Tipps und Informationen
- Analysescript für genutzte Funk-Adressen, Funkmodul-Hardware und Zentralen Hardware
- NANO CUL 868MHz - Stick zum AskSin Analyzer XS umflashen (Anleitung für ArduinoIDE unter Windows)
- Firmware Updates für IP-Aktoren / Sensoren... Info's, Tipps und Sonstiges
- CCU funkt nicht - CarrierSense (CS) Probleme erkennen und lösen
- Baxxy
- Beiträge: 10845
- Registriert: 18.12.2018, 15:45
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 610 Mal
- Danksagung erhalten: 2229 Mal
Re: Löschen einzelner Werte möglich?
Ach herrje, Negativwerte gibt es auch noch.
Dann vielleicht...
Code: Alles auswählen
if (entry.value!=0)
Grüße... Baxxy
- Raspberry Pi 4 als Homematic-Zentrale - Tipps und Informationen
- Analysescript für genutzte Funk-Adressen, Funkmodul-Hardware und Zentralen Hardware
- NANO CUL 868MHz - Stick zum AskSin Analyzer XS umflashen (Anleitung für ArduinoIDE unter Windows)
- Firmware Updates für IP-Aktoren / Sensoren... Info's, Tipps und Sonstiges
- CCU funkt nicht - CarrierSense (CS) Probleme erkennen und lösen