0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

2023: Week 35 - HR Month - Transfers / Preppin'Data / Tableau Prep

Last updated at Posted at 2023-09-02

Challenge Preppin'Data 2023:Week 35

概要

従業員の異動件数を集計する

従業員の各月ごとの勤務データがあります。
そのデータには、勤務先のDCコードが入っいます。
勤務した月のデータしか、勤務データにもっていないです。

  • 異動データの特徴
    1 異動した場合、dc_nbrが次の月のレコードから変更になる。
    2 異動した場合、異動元の最後のレコードのleave_dateに異動日が設定される。
    3 異動した場合、異動先の最初のレコードのtenure_monthsが0リセットされる。
    image.png

  • 集計上の注意点
    従業員が 1 つの DC から別の DC に異動するか、従業員が退職し、その後別の DC に再雇用されるかが区別されていません。そのため、2 か月以内であれば、従業員は退職すると仮定します。
    たとえば、従業員が 5 月に DC #1 で勤務し、6 月は勤務せず、7 月に DC2 #2 で勤務した場合、これは異動としてカウントされます。

以下は、インプットデータを時系列に並べたものです。縦が従業員ID、横が月、各フィールドにDCの値を置いて色付けしてます。

image.png

問題のページ(英語)※ここからデータをダウンロード

出題者の回答のページ(英語)※動画あり

自分の解決法

まず、データ取り込み時に来ない使わないデータは削除しておきます。
次に、異動した月のデータ(異動元)を洗い出し、その時のDC番号をフラグとして設定します。
ここでLookup関数を使います。
image.png

今回Total行とDCごとの行を作るのでため、分けて考えます。
最後に全部のデータを結合し、計算フィールドで計算を行います。
image.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?