ArcGIS Pro では時間データがある場合、タイム スライダーを使って時系列表現を行ったり、時空間ホット スポット分析などの時間情報を使った統計解析に利用したりすることができます。しかし、時間のフィールド タイプは正しく設定しておかないと、エラーになったり、思うとおりに表示できなかったりします。また、時間の表記方法を変更したい場合もあります。そこで今回は時間フィールドに関する変換機能を実装した [時間フィールドの変換] ツールを紹介します。
目次
フィールド データ タイプの確認方法
変換を行う前に、自分の時間データのフィールド データ タイプを確認しましょう。フィールド データ タイプを確認するには、[フィールド] テーブルを確認します。[フィールド] へのアクセス方法は他にもいくつかありますが、ここでは代表的な手順をご紹介します。
手順
また、もう一つ簡易的な方法として、[属性テーブル] で、フィールド名にカーソルを合わせると、ポップアップが表示されるので、そこから確認することも可能です。
[時間フィールドの変換] ジオプロセシング ツール
[時間フィールドの変換] ジオプロセシング ツールを使用すると、時間表記のフィールド データ タイプを変換したり、表記方法を変更したりできます。以下に、[時間フィールドの変換] ジオプロセシング ツールを使った例をいくつかご紹介します。
Text 型を Text 型の別の表記に変換
Text 型の場合、任意の組み合わせで別の表記に変換することができます。例えば、下図では元のフィールド (日時_text2) は年から始まり、区切りはスラッシュ表記ですが、変換後 (日時_text3) は日から始まるハイフン表記に変換しています。
ただし、この場合は出記力形式のデータ タイプも Text 型なので、時間データとしては利用できません。時間データとして利用する場合は次からの例をご参考ください。
Text 型を Date 型に変換
CSV ファイルや Microsoft Excel ファイルなど、外部からデータを取り込んだ場合、元々のデータ タイプが Text 型になっていることがよくあります。ArcGIS では Text 型では、時間データとして認識されませんので、Text 型から Date 型に変換します。以下に、よくある時間表記の 2 例をご紹介します。
スラッシュ区切り:
Text 型の日付表現としては、スラッシュ区切り (2024/1/1) で表記されている場合があります。一見正しい時間データに見えますが、データ タイプは Text 型なので、Date 型に変換する必要があります。下図はその変換方法と変換の前後の例です。
年月日:
Text 型の日付表現としてよくあるのが、漢字の年月日 (2024年1月1日) で表示されている場合などです。そのままでは時間データとして使用できませんので、Date 型に変換します。
変換時の注意点①
時間形式の指定方法にはルールがあり、大文字・小文字でも違いがあります。以下は例です。
- yyyy: 4 桁の年を表します。例: 2024 (年)
- MM: 2 桁の月を表します。例: 08 (月)、12 (月)
- hh: 2 桁の時間を 12 時間で表します 例: 09 (午後9時)
- HH: 2 桁の時間を 24 時間で表します 例: 21 (21 時)
詳細は、「文字列または数値の時間値の日付形式への変換」ページをご参照ください。
変換時の注意点②
Text 型から変換を行う際、ツールの [入力形式] パラメーターでは、変換前の形式で入力するようにします。例えば、以下の図では、変換前の元となる青枠の 1 行目の日時表記は 2023/8/3 15:00:00 となっており、月と日は 1 桁です。そのため [入力形式] パラメーターには「yyyy/M/d HH:mm:ss」が正解となり、結果は緑枠の列になります。しかし、誤って [入力形式] パラメーターに「yyyy/MM/dd HH:mm:ss」と入力してツールを実行した場合、赤枠の列のように、日時表記が正しく出力されない結果となります。
Date 型を Text 型に変換
Date 型のフィールド タイプがある場合は、Text 型に変換することができます。
また、その他 Double 型や Float 型など、他のデータ タイプに変換することもできます。
Date 型を Date Only、Time Only、Timestamp offset 型に変換
ArcGIS Pro 3.2 からは、時間用の新しいフィールド データ タイプとして、Date Only 型 (日付のみ)、Time Only 型 (時間のみ)、Timestamp offset 型 (タイムスタンプ オフセット) をサポートしました。変換したいデータ タイプは [出力フィールド タイプ] パラメーターから選択できます。Date 型から新しいデータ タイプに変換すると下図のようになります。
おまけ: [日付フィールドを高精度に移行] ジオプロセシング ツール
ArcGIS Pro 3.2 では時間に関するもう 1 つのツールとして、新しく [日付フィールドを高精度に移行] ジオプロセシング ツールも登場しています。こちらのツールでは、Date 型のフィールドをミリ秒単位の高精度に変換し、より多くの桁数まで表示させることができます。変換することで、高精度な時間情報を記録できる GPS デバイスなどで取得したデータにも対応できます。本ツールは Standard 以上のライセンスが必要です。
さいごに
ArcGIS で表示や解析を正しく行うためには、データの整備がとても重要です。時間のデータも予め、今回のブログでご紹介したように適切に設定することで、タイム スライダーの使用時や解析の実行時に発生するエラーを減らす事が出来ます。本記事が参考になれば幸いです。