Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
kenjiokamoto
Contributor II
Contributor II

最終日からのデータ参照方法

はじめまして。

以下のようなテーブルがあった時、最終日からデータを参照し、データの補完をしたいと思っています。

IDDATECODE
12017/10/1A
12017/10/2A
12017/10/3B
12017/10/4
22017/10/1C
22017/10/2C
22017/10/3D
22017/10/4

ID「1」は10/4のCODEがブランクになってしまっていますが、

ブランクの場合は、CODEにID「1」のCODEがブランクではない最終日のCODEである「B」を補完したいです。

ID「2」の場合であれば、同様に10/4のCODEには「D」を持ってきたいです。

ロードスクリプト上で、解決したいのですがどのようにすればよろしいでしょうか。

Qliksenseでの作成もしくはロードスクリプトを教えて頂けますでしょうか。

Labels (2)
1 Reply
hka
Employee
Employee

質問頂いたテーブルのようにID、DATE、CODEの並び順になっている前提で回答します。

下記のように記述します。

テキストファイルやxlsxファイルのフォーマット定義の()の中に

filters()を追加し、その中にReplace()の中身を記述します。

3が列の順番、topが上のセル、StrCnd(null)がnullの場合という条件なので

3列目の値がnullの場合に上のセルの値に置換するという意味になります。

LOAD [ID],

[DATE],

[CODE]

FROM [lib://Cmmunity/Data20171017セル変換.txt]

(txt, codepage is 28591, embedded labels, delimiter is '\t', msq,

  filters(

   Replace(3, top, StrCnd(null))

  )

);

INLINE LOADの場合の方がわかりやすいと思いますので参考に記載します。

LOAD * INLINE [

    ID, DATE, CODE

    1, 2017/10/1, A

    1, 2017/10/2, A

    1, 2017/10/3, B

    1, 2017/10/4

    2, 2017/10/1, C

    2, 2017/10/2, C

    2, 2017/10/3, D

    2, 2017/10/4

](embedded labels,filters(

Replace(3, top, StrCnd(null))

));