コンテンツにスキップ

日付列同士の差分計算

2 つの日付の差を数値にします。受注から出荷までの日数、登録からの経過年数、作業にかかった時間を出すときに使います。

入出力

ポート内容
入力データデータ
出力データ差分の列を加えたデータ

Spark エンジンでも動きます。

行の数と並び順は変わりません。差分の列がいちばん右に 1 つ増え、元の 2 列はそのまま残ります。上書きはできません。

計算は 日付列1 − 日付列2 です。画面でも上のブロックが「日付列1から」、下のブロックが「日付列2を引く」になっています。順番を逆にすると符号が逆になります。

設定項目

結果の挿入先を設定必須
差分を入れる新しい列の名前。すでにある列と同じ名前にするとエラーになります。
日付列1を選択必須
引かれる方。日付型・日付時間型・時間型の列だけ選べます。
日付列2を選択必須
引く方。日付列1 で選んだ列は候補から外れます(同じ列同士では差が取れないため)。
固定日付を演算する
日付列1・日付列2 のそれぞれに付いていて、列を選ぶ欄の上にあります。既定は off。on にすると、その側だけ列の代わりに「日付を入力」の欄が出て、全行を同じ日付と比べます。
日付を入力必須
「固定日付を演算する」が on のときに出ます。2024-04-01 のように入力します。
結果の単位を選択
年 / 月 / 日 / 時 / 分 / 秒 / 時:分:秒。最初は「年」が選ばれています。両方とも列で、どちらかが時間型のときだけ、時 / 分 / 秒 / 時:分:秒 の 4 つに絞られます(このときの既定は「時」)。片方でも固定日付にすると 7 つすべてが出ます。

単位ごとの結果

単位結果の型出てくる値
年数値1 年を 365.2425 日として割り、小数を切り捨てた数
月数値1 か月を 30.436875 日として割り、小数を切り捨てた数
日 / 時 / 分数値小数を切り捨てた数
秒数値小数第 6 位まで
時:分:秒時間01:30:00 のような時間型

日付列1 が古いと、結果はマイナスになります。 切り捨ては小さい方向に行うので、たとえば 1 日に満たないマイナスの差は -1 になります。

実行した日を基準にする

固定日付の欄は自由に入力できるので、変数機能の概要で作った日付の変数を $変数名 の形で書けます。変数の指定方法に「よく使う日付を指定(今日)」や「相対日付を指定」を選んでおくと、実行するたびにその日の日付で計算されます。

書き方と注意は変数利用方法(分析プロジェクト)、変数そのものの作り方はローカル変数の新規作成にあります。

エラーと対処

対象の列が選択されていない

日付列1・日付列2 のどちらかが空のまま実行したとき。

対象の列が選択されていません。

直し方 — 列を選ぶか、「固定日付を演算する」を on にして日付を入れてください。

対象の列が見つからない

前の処理で列名が変わった、または列が消えたとき。

対象の列が存在しません。

直し方 — 列を選び直してください。

新規列名が既にある

「結果の挿入先を設定」に、すでにある列と同じ名前を入れたとき。

新規列名({{new_col}})が既存の列名と重複しています。

直し方 — 別の名前にしてください。

変数が設定されていない

「日付を入力」に $ 付きの変数を書いていて、その名前の変数がないとき。

変数: {{val}}が設定されていないため処理を中断しました。

{{val}} には、見つからなかった変数名が入ります。

直し方 — 名前の打ち間違いを直すか、その名前の変数を作ってください。共通変数を使っているつもりなら、その分析プロジェクトにインポートされているかを確かめてください。

よく使う例

1. 出荷までの日数を出す

お題 — 受注日から出荷日までが何日かかったかを見たい

入力

受注日出荷日
2024-04-012024-04-04
2024-04-022024-04-02

設定

設定項目値
結果の挿入先を設定リードタイム
日付列1を選択出荷日
日付列2を選択受注日
結果の単位を選択日

出力 — 3 / 0 の数値。

2. 実行した日を基準に経過日数を出す

お題 — 最終購入日から今日まで何日空いているかを、毎日の実行で更新したい

入力 — 最終購入日(日付型)が入ったデータ

設定

設定項目値
結果の挿入先を設定経過日数
日付列1の「固定日付を演算する」on
日付を入力$today(「今日」の日付変数)
日付列2を選択最終購入日
結果の単位を選択日

出力 — 実行した日までの日数。この列を数値列のカテゴリ化で区切れば、「30 日以内」「90 日以内」といった分け方ができます。

3. 作業にかかった分数を出す

お題 — 開始時刻と終了時刻から作業時間を分で見たい

入力

開始終了
2024-04-01 09:00:002024-04-01 10:30:00

設定

設定項目値
結果の挿入先を設定作業分数
日付列1を選択終了
日付列2を選択開始
結果の単位を選択分

出力 — 90 の数値。合計や平均が出せます。

4. 作業時間を時計の形で見る

お題 — 1 日で終わる作業の長さを 01:30:00 の形で見たい

入力 — 例 3 と同じデータ

設定 — 「結果の単位を選択」を 時:分:秒 にします。

出力 — 01:30:00 の時間型。日をまたぐ作業がある場合は使えません(上の注意を参照)。

5. 固定の基準日からの日数を出す

お題 — キャンペーン開始日から何日目の売上かを出したい

入力 — 売上日(日付型)が入ったデータ

設定

設定項目値
結果の挿入先を設定開始からの日数
日付列1を選択売上日
日付列2の「固定日付を演算する」on
日付を入力2024-04-01
結果の単位を選択日

出力 — 0 から始まる数値。開始日より前の行はマイナスになります。

関連