Gibt es in R vorhandene Implementierungen, um ISO8601 -Strings in POSIXt-Objekte zu analysieren? Die ISO8601-Spezifikation ermöglicht das Drucken von Datum / Uhrzeit in verschiedenen (nicht überlappenden) Formaten. Daher muss man wahrscheinlich etwas Magie für reguläre Ausdrücke verwenden, um das Format zu erkennen und an strptime
zu übergeben.
Dies richtig zu tun, könnte tatsächlich ziemlich herausfordernd sein , aber etwas, das die gebräuchlichsten Formate erkennt, wäre schon sehr hilfreich. Ich kann mir kaum vorstellen, dass ich der Erste bin, der darauf eingeht, aber es fällt mir schwer, gute Implementierungen zu finden.
Genau genommen können Sie nicht. Ich muss nichts über R oder Crane wissen (oder sogar, was sie sind), um Ihnen das zu sagen, weil ich ISO 8601 gut genug kenne, um zu wissen, dass ISO 8601 allein nicht zu wissen ist, was gemeint ist vor allem in den kürzeren Formen.
Finden Sie heraus, welches Profil von ISO 8601 die andere Partei verwendet. Wenn sie nicht wissen, wovon Sie reden, dann werden Sie ihnen einen Gefallen tun, wenn Sie auf das hinweisen, was ich gerade im obigen Absatz gesagt habe. Wie ich einmal an anderer Stelle geschrieben habe,
Leider denken viele Leute an ein bestimmtes Profil, das sie kennen, wenn sie "ISO 8601" hören, andere Leute wissen, dass die Verwendung von 8601 eine gute Sache ist, aber sie sind nicht mit den Details der Implementierung vertraut. Daher könnte ein Spezifikations- oder Anforderungsdokument 8601 erwähnen, aber nicht expliziter sein. In solchen Fällen ist es wichtig, sich Klarheit zu verschaffen, anstatt davon auszugehen, dass das Format, das Sie für "ISO 8601" halten, das richtige ist.
Sagen Sie ihnen also: "ISO 8601 ist nicht spezifisch genug, ich muss genau wissen, was Sie tun, was Ihre Grenzen für die Präzision sind." (Und möglicherweise, was Ihre Politik auf Daten vor 1582 und vielleicht wieder vor 0001 sind, Ihre Politik auf Schaltsekunden, und ein paar andere Dinge offen gelassen, aber der Standard)
Dann sollte alles, was Sie damit zu tun haben, einfach genug sein: Abgesehen von diesem Punkt der Mehrdeutigkeit ist es ein ziemlich unkomplizierter Standard. Es sollte nur als ein Standard zum Definieren von Datumsformaten gedacht werden, mehr als eines, das ein Datumsformat definiert.
Siehe .parseISO8601
im xts-Paket für eine Implementierung. Ich bezweifle, dass dies "out of the box" funktioniert, aber es sollte Ihnen eine gute Idee geben, wie Sie Ihre spezifischen Bedürfnisse umsetzen können.
Das sieht vielversprechend aus: Ссылка
parsedate: Erkennen und Analysieren von Daten in verschiedenen Formaten, einschließlich aller ISO 8601 Formate
Analysiert Datumsangaben automatisch, ohne dass ein Format angegeben werden muss. Derzeit enthält es den Git-Parser. Es kann auch erkennen und Parsen Sie alle ISO 8601-Formate.