タイプとIDで分類され、日付列でソートされた2つの行の値の差を計算したいと思います。データテーブルの例を参照してください。 「計算済」列は現在の結果を示し、「期待値」列は達成したい結果を示します。Spotfire over関数 - 複数のカテゴリの前の日付
ID Type Date ValueA ValueB ValueC Calculated Expected
1 A 8/15/2017 38.11
1 A 8/15/2017 78.10 39.99
1 A 8/22/2017 110.24 32.14
1 B 8/22/2017 20
1 B 9/16/2017 10
1 A 9/16/2017 101.13 -9.11
2 C 8/17/2012 90
2 A 8/18/2012 863.25
2 B 8/18/2012 15
2 A 8/19/2012 952.35 89.1 89.1
2 B 8/19/2012 20
私は、次のカスタム式を試してみましたが、唯一の指定されたIDの連続した日付がある場合のための差分値を算出しているようです。
Case
when [Type]="A" then [Value] - Max([Value]) over (Intersect([ID],Previous([Date])))
else NULL
式は、前の日は唯一のタイプ「A」に分類値の前の日であるように、OVER文の「A」と入力してフィルタリングする試みです。ただし、連続する日付でない場合(つまり前日)は、前の日付をNULLとみなしているようです。この式の結果については、上の表の「計算済み」を参照してください。
また、IntersectステートメントにTypeを追加しようとしました。 。 :交差([ID]、[タイプ]、前の([日付])が、私は同様の結果を得る
値は必ずしも入力されません。期待される結果は何ですか? ? – scsimon
あなたの質問に答えるために投稿を更新しました。異なるタイプの列に対応する複数の値の列を追加しました。そのため、値の列にはそれぞれの型の行のみが設定されます。達成したいと思っている結果を示すために、「Expected」という列を追加しました。 –