インポート中に時刻形式 2018-01-01 00:00:00+08:00 が JMP で認識されないISO_8601 によると、2018-01-01 00:00:00+08:00 は標準の時刻形式です。
インポートタスクのたびにフォーマットを変更する必要がないように、JMP がこのフォーマットを受け入れるようにすることはできますか?
Re: インポート中に時刻形式 2018-01-01 00:00:00+08:00 が JMP で認識されないはい、 @Craige_Hales 、 あなたが正しい。 標識を間違えてしまいました。上記の投稿を修正しました。
Re: インポート中に時刻形式 2018-01-01 00:00:00+08:00 が JMP で認識されない-5ランドからこんにちは。
私はジェフの答えが好きです(おそらく符号の変更が必要です)。
これらの数字はタイムゾーンです。 JMP はタイムゾーンをあまりサポートしていません。 ほとんどの時間は、
- 常に同じタイムゾーンにあり、ゾーンは無視できます。
- または、必要なのは現地時間です。午前 11 時は昼食の直前なので、ゾーンは無視できます。
ただし、異なるゾーンでのイベントの順序を知る必要がある場合、タイム ゾーンは大きな違いをもたらします。 その場合、UTC に変換し直すのが正しい答えです。 次に、混乱を避けるために、「すべての時刻は UTC」などのメモを含むテーブル変数を追加できます。
また、時間を操作するコードは慎重にテストしてください。 一致...0... を含むものを理解するには、ジェフの公式を研究する必要がありましたが、それは正しいかもしれません (または符号が反転している可能性があります)。
https://en.wikipedia.org/wiki/ISO_8601
私はゾーン -5 (「UTC から 5 時間遅れ」) にいます。 5 を追加する必要があると確信しています (または -5 を減算します) UTC を取得するまでの時間。 「+match(」は「-match(」にするべきだと思います。
この最後のビデオを作成することで、私は最終的に日付変更線の概念を理解することができました。地図では、日付変更線が左右の端に表示され、+00:00 ゾーンが中央に表示されます。 ロンドンの正午になると、どこもかしこも同じ日になる様子を見てください。 下部の注釈は、右側にジャンプして戻ると日が切り替わります。 右側に月曜/火曜が表示されている場合、日付変更線の真夜中に火曜が始まったばかりで、それ以外の場所は月曜です。 真夜中が右から左に進むにつれて、マップ全体で月曜日が終わり、どこでも火曜日になります。
Re: インポート中に時刻形式 2018-01-01 00:00:00+08:00 が JMP で認識されないメッセージは、次のエラーを修正するために編集されました。 @Craige_Hales 、以下で指摘します。 私はもともとGMTへの調整で標識を逆にしていました。 -ジェフ
@Mark_Baileyは近いですが、プラス (+) の後の値は時間ではなく、GMT からのオフセットだと思います。
したがって、すべてを GMT に戻したい場合は、オフセットを考慮する必要があります。
Informat( Word( 1, :ISO 8601 Datetime ), "yyyy-mm-dd" )
+Informat( Word( 1, Word( 2, :ISO 8601 Datetime ), "-+" ), "hh:mm:ss" )
+Match( Contains( :ISO 8601 Datetime, "+" ) > 0,
0, Informat( Word( 2, Word( 2, :ISO 8601 Datetime ), "-" ), "h:m" ),
-Informat( Word( 2, :ISO 8601 Datetime, "+" ), "h:m" )
)
とにかくこれを使用する場合は、数式エディターで読む方が簡単かもしれません。

数式列を含む例を含むデータ テーブルを添付します。

Re: インポート中に時刻形式 2018-01-01 00:00:00+08:00 が JMP で認識されない機能する形式は見つかりませんが、日付と時刻の 2 つの部分に分けることができます。 ピースを一緒に追加します。 以下は、日付と時刻を表す数値データを格納するために 2 番目の列で使用できる数式です。
time in = "2018-01-01 00:00:00+08:00"; // represents a row in the data table
In Format( Word( 1, time in ), "yyy-mm-dd" ) + In Format( Word( 2, time in, "+" ), "h:m" );