Alteryx版 文字型(String)から日付型(DateTime)への変換

集計するシステムによって、日付に関するデータの
表示形式や型がさまざまあると思います。

今回は複数ある日付に関する表示(データ)を
Alteryxを使い、文字型(String)から日付(DateTime型)へ変換する、
いくつかの方法をまとめてみました。

こんにちは、PR担当Saoriです。

処理アイコンをドラッグ&ドロップし、線でつなげていくことで「ワークフロー」という処理の履歴を構築し、
再生ボタンを押すことで、処理が実行できるため、とても分かりやすいのが強みの統計ツールである”Alteryx”。

日付表示は使うシステム・会社・国によって表示形式や型がさまざまです。
表示形式ごとにどう変えたらいいか?ご質問をいただくことがよくあります。

AlteryxはDateTimeに関する変換を簡単に行えるツールがあり、
また式ツールから、日付に関する関数を使って変換することも可能です。

今回は基本的な時間の変換方法をご紹介します。

※今回はAlteryx 2018.3 英語版 を利用しています。

文字型データを日付型データへ変換

前提

今回はさまざまな日付の形をcsvファイルで読み込み、型を変換していきます。

Alteryxはcsvファイルを取り込んだ際、どのデータも必ず文字型(V_Wstring)で認識されます。

本当かどうか確認してみます。

Input Data(データ入力)ツールInput Data Tool データ入力 ツール Alteryx アイコン画像を使い、データを取り込みます。

Select(セレクト)ツールSelect セレクト 選択 Alteryx ツール アイコンを使い、データの中身を確認してみます。

Alteryx Date String 日付型 文字型 Select セレクト Tool Configuration 設定 画面

文字型(V_WString)になっています。

 

なお、Select(選択)ツールを使い、該当カラムをDate型またはDatetime型 に変更してもうまく変換することはできません。

では日付型に変える方法をご紹介いたします。

ツールを使った変換 実践編

文字型のデータを早速変換していきます。

日付の表現方法は多数ありますので、表示別に紹介をしてまいります。

なお、文字型を日付型に変換する方法は、2つの方法があります。

Alteryx DateTime Tool 日時 ツール アイコン 画像Date(日時)ツール を使う方法
Formula 式 フォーミュラ ツール Alteryx アイコンFormula(フォーミュラー)ツール を使う方法

それぞれ方法をご紹介してまいります。

なお、全パターンは前提でご説明したワークフローまで、全て共通です。
Alteryx Date String 日付型 文字型 Select セレクト InputData ワークフロー

 

1. YYYY/MM/DD形式

2001/01/01
2001/1/1
どちらの形でも、同じ結果を得ることが出来ます。


Alteryx DateTime Tool 日時 ツール アイコン 画像DateTime(日時)ツールでの設定方法
設定画面はこちらです。

Alteryx Date String 日付型 文字型 YYYYMMDD DateTime 日時ツール 設定画面

簡単に設定内容をご説明します。
①変換形式を確認
日時(Datetime)型→文字(String)型か、
文字(String)型→日時(Datetime)型か、
を選択します。

②変換するフィールド(カラム)を選択
初期設定では最も左にある文字型のフィールド名が表示されています。

③出力されるフィールド名(カラム名)を選択
初期設定は 「DateTime_Out」 と記載されています。
書き換えOKです。
フィールド(カラム)の型式が異なるため、今までと同じフィールド(カラム)には出力できません。
そのため、もっとも外(右)にフィールド名(カラム名)が追加され出力されます。

④出力形式を指定

yyyy-MM-dd

を選択します。
※いろいろ選択してみていますが、上記の形式変換がうまく行きます。

出力結果はこうなります。

Alteryx DateTime Tool 日時 ツール 結果 Output 変換後 画面 1


Formula 式 フォーミュラ ツール Alteryx アイコンFormula(フォーミュラ)ツールでの設定方法
こちらは関数を使って変換していきます。

DateTimeParse が文字型を日付型に変換するための関数になります。
こちらも、簡単に設定内容をご説明します。

Alteryx DateTime Formula フォーミュラ ツール 関数 設定画面
①フィールド名を記載
こちらも新しいフィールドへ出力します。
名前は何でもかまいません。
今回は、何かわかりやすいよう”変換日付”と入力しています

②式を入力

DateTimeParse([日付],’%Y-%m-%d’)

とします。
DateTimeParse関数を使い、日付フィールドを指定した識別子に沿って変換する。
という意味です。

この%を使った文字列ですが、これは書式指定子といって、書式を指定するためのルールです。
書式指定子とは、%英字という書式にすると、後に続く値と置き換えることができる指定子のこと。

Alteryxでのルールは以下です。

 “+”マークをクリックすると内容をご確認いただけます。 
書式指定子一覧
Format String
(指定式)
Result
(出力結果)
%d-%b-%y 22-Apr-08
%A,%d %B,%Y Tuesday, 22 April, 2008
%d-%m-%y 2022/4/8
%d-%m-%Y 22-04-2008
%d %B, %Y 22 April, 2008
%d/%m/%y 2022/4/8
%d/%m/%Y 22/04/2008
%a, %B %d, %Y Tue, April 22, 2008
%m-%d-%y 04-22-08
%m-%d-%Y 04-22-2008
%m/%d/%y 04/22/08
%m/%d/%Y 04/22/2008
%b %d 22-Apr
%B %d, %Y 22-Apr-08
%B, %Y April, 2008
%Y-%m-%d 2008/4/22
%Y%m%d 20080422

Formula(フォーミュラ)ツールで新たに計算を行う際、出力型の設定が初期設定では”V_Wstring” 文字型 になっていますので、Date型に変更します。

それらをあわせると、以下のような結果が出てきます。

Alteryx DateTime Formula フォーミュラ ツール 関数 結果 Output 変換後 画面 1

 

こちら、再度Select(選択)Select セレクト 選択 Alteryx ツール アイコンツールを使いデータの型式を見てみると、

 

Alteryx DateTime Selectセレクト 選択 関数 結果 Output 変換後 画面

ちゃんとDate(日付)型になっています。

▲目次にもどる

2. YYYYMMDD  形式 の場合

ここからは同じようなパターンとなりますため、設定内容のみご紹介します。


Alteryx DateTime Tool 日時 ツール アイコン 画像DateTime(日時)ツールでの設定方法
設定画面はこちらです。

Alteryx DateTime Tool 日時 ツール 設定 Configuration 画面 3


Formula 式 フォーミュラ ツール Alteryx アイコンFormula(フォーミュラ)ツールでの設定方法
こちらは関数を使って変換していきます。

Alteryx DateTime Formula フォーミュラ ツール 関数 設定画面2
▲目次にもどる

3. YYYY-MM-DD 形式 の場合

Alteryx DateTime Tool 日時 ツール アイコン 画像DateTime(日時)ツールでの設定方法
設定画面はこちらです。
文字型と同じ記号を使った表記形式で変換をするようにしておけばOKです。

Alteryx DateTime Tool 日時 ツール 設定 Configuration 画面 4

 


Formula 式 フォーミュラ ツール Alteryx アイコンFormula(フォーミュラ)ツールでの設定方法
同じく変換内容を文字型と同じ記号を使った表記形式にすることで変換が可能になります。

Alteryx DateTime Formula フォーミュラ ツール 関数 設定画面4

▲目次にもどる

4. YYYY.MM.DD 形式 の場合

Alteryx DateTime Tool 日時 ツール アイコン 画像DateTime(日時)ツールでの設定方法
設定画面はこちらです。
YYYY.MM.DD形式はリストに値がないため、Customを選択し、yyyy.MM.dd と記入します。

Alteryx DateTime Tool 日時 ツール 設定 Configuration 画面 5

 


Formula 式 フォーミュラ ツール Alteryx アイコンFormula(フォーミュラ)ツールでの設定方法
こちらは関数を使って変換していきます。先ほど同様、もともと表示されていた記号どおりの表記をするような指示をすれば変換ができます。

Alteryx DateTime Formula フォーミュラ ツール 関数 設定画面5

▲目次にもどる

5. 和暦 の場合

和暦を利用されている場合のご紹介です。
今日ご説明する方法は一例です。
今回は、年を西暦に変換し、文字列を削除する方法をとっています。

Alteryx DateTime String 変換 和暦 日時型 文字型 変換 1

①平成○○年を西暦に変換する
Findreplace(検索置換)ツールFindReplace 探索変換 Alteryx ツール アイコンを使います。
事前に元号が西暦何年かをリスト化しておきます。
Alteryx DateTime String 変換 和暦 日時型 文字型 変換 2

年号を変換していきます。一旦、以下のように変換を行いました。

Alteryx DateTime String 変換 和暦 日時型 文字型 変換 4

②不要な文字を削除する
これでもまだAlteryxは日付としての認識をしてくれません。
”年” ”月” ”日” は今回は不要になるため、削除していきます。
Formula 式 フォーミュラ ツール Alteryx アイコンツールを使い、変換をしていきます。

こちらは関数を使って変換していきます。

REGEX_Replace([日付],”年”,”/”)

REGEX_Replaceという関数があります、ExcelでいうReplace関数に近いです。
ここで、”年”という文字があったら”/”に変えてという指示を出しています。
”月”も”日”も同様に処理を行います。

Alteryx DateTime String 変換 和暦 日時型 文字型 変換 5

③日時型に変換する
ここまでくれば、今までご説明しておりました文字型を日付型に変換する方法と同じになります。
※そのため詳細の設定方法は割愛いたします。

和暦を日付型に変換するために作成したワークフローは以下のようになりました。
Alteryx DateTime String 変換 和暦 日時型 文字型 変換 ワークフロー

▲目次にもどる

6.UNIX時間 の場合

最後はUNIX時間の変換です。
私はGoogle Big Queryを使っています。データがUNIX時間で出力されています。
人間が理解できる時間軸に変換をして、集計や分析を行っておりますので、この変換は大事です。
(Google Big Queryで、クエリを使って変換することもできますが、私はAlteryxを使う方が好きです。)

Big Queryから時間だけを取り出して見ます。
いつだかぱっと見ただけではわかりません。
Alteryx DateTime String 変換 UNIX time UNIX時間 日時型 文字型 変換 1

この変換にはFormula(フォーミュラ)ツールFormula 式 フォーミュラ ツール Alteryx アイコンを使います。
DateTime(日時)ツールを使っての変換はできません。

DATETIMEADD(‘1970-01-01 00:00:00’,[visitStartTime], ‘seconds’)

Alteryx DateTime String 変換 UNIX time UNIX時間 日時型 文字型 変換 2

DATETIMEADD という関数を使います。
UNIX時間は1970年1月1日から1秒ずつ積み上げてカウントをしているため、合計秒数を今だといつになるのか?という計算をしてくれています。

このように、私たちが理解できる時間に変換することができました。
Alteryx DateTime String 変換 UNIX time UNIX時間 日時型 文字型 変換 3

ワークフローはとってもシンプルです。
Alteryx DateTime String 変換 UNIX time UNIX時間 日時型 文字型 変換 ワークフロー

▲目次にもどる

まとめ

文字型を日付型に変える方法をご紹介しました。

日付型に変えることで、2つの期間の差を調べたり、ご加入後○日後の方への連絡など、
期間に関する集計やアプローチを柔軟に実施することが出来るようになります。

変換方法については、考えられるパターンを全てご紹介しましたので、
辞書的にご活用いただければ幸いです。

次の記事では、期間の求め方、時差の変換など
Alteryxに搭載されているDateTime(日付・時間)に関する関数を使った
計算方法を、事例を交えてご紹介いたします。

Alteryx(アルタリクス)を14日間無料でご体験いただけます。
早速はじめてみませんか?
トライアル期間中もサポート対応実施中です!ご不明な点がございましたらお気軽にお問い合わせください。
14日間のフリートライアルはこちらから

Alteryx(アルタリクス)のお見積りや、データ分析に関するご相談は下記より承っております。

お見積もり依頼などのご相談はこちら

 

関連記事

  1. データ分析はじめの一歩②【データの中身】

  2. Alteryx 全種類 機能説明 TOP画像

    Alteryx機能紹介 Spatial(空間)

  3. Alteryx版 Date関数事例紹介(日数差/時差変換/平日のみ抽出…

  4. ANALYTICS GALLERY alteryx

    Alteryx Analytics Galleryの紹介(Big Qu…

  5. Alteryx Desginer 2019.1 Start画面FULL

    リリース情報(Alteryx Desinger 2019.1)|Pyt…

  6. マーケティング・顧客分析を行う際に有効なRFM分析

フリートライアル(14日間の無料試用)