Die Arbeit mit Datums- und Zeitangaben in ArcGIS kann zu einem spannenden Abenteuer werden – inhaltlich aber auch rein technisch gesehen. Oft liefern beispielsweise Telemetrie-Sender “interessante” Datentabellen und schlussendlich möchte man das ganze dann noch eventuell als ‘temporal dataset/time layer’ einsetzen…
Da steht man nun da – der Telemetrie-Sender liefert Daten als XLSX-File das erst mal als X/Y-Event Layer in ArcMap muss (Tipp: CSV oder dbase sind meine Favoriten!). Mit etwas Glück erhält man dann eine FeatureClass in der das Datumsfeld vom Datentyp “date” ist (= Voraussetzung für die folgenden Funktionen) – die Zeit läuft extra als Attribut mit… und welche Wünsche hat nun die Time-Funktion für ‘temporal datasets’ ?? ArcGIS bietet über den Calculator einige interessante Hilfsmittel.
Nun gehts daran die beiden Attribute Datum/Zeit als ein Attribut in eines der gewünschten Formate zu konvertieren…
Aus 2 mach 1 – datepart
- 2 Attribute: UTC_DATE im Format dd-mm-yyyy und UTC_TIME im Format hh:mm:ss
- das Ziel: yyyy-mm-dd hh:mm:ss
- Die Funktion datePart() ermöglicht den Zugriff auf die einzelnen Elemente eines Datumsfeldes im Field-Calculator
DatePart("yyyy", [UTC_DATE])&"-"& DatePart( "m", [UTC_DATE] )&"-"& DatePart ( "d", [UTC_DATE] )&" "& [UTC_TIME]
Nach Monaten gruppieren
Natürlich kann datePart() auch dazu verwendet werden ein Monatsattribut zu generieren:
DatePart( "m", [UTC_DATE] )
Zurück in die Zukunft
Ich hatte das Problem, dass ein Telemtriesender ein falsches Datum mitspeicherte – genau 10 Tage verspätet. Mit einem einfachen +10 auf den Tageswert ist es nicht getan … was wenn damit ein Monatswechsel einhergeht ? Die Funktion DateAdd() hilft dabei enorm:
NewDate = DateAdd("d",10,[OriginalDate])
Monatssprünge/Jahressprünge werden zuverlässig gemacht.
Mehr…
Quelle: http://www.esri.com/news/arcuser/0405/files/fieldcalc_1.pdf
Kommetare und Anregungen: iSticktoit.net auf Facebook