計算フィールド
Reveal では、計算フィールドというフィールドをデータセットに定義することができます。フィールドは、式 (数式) を使用して作成されます。式は、既存のフィールド、定数値、および以下の組み合わせにすることができます。
以下の 2 種類の計算フィールドがあります。
事前計算フィールド
事前計算フィールドは、データ エディターの集計を実行する前に評価されます。つまり、特定の数式を適用するために、Reveal はフィールドのデータセット内のすべてのレコードを 1 回または複数回調べます。そのため、大規模なデータセットを使用する場合、事前計算のパフォーマンスが低下する可能性があります。
新しい計算フィールドを追加するには、[フィールド] パネルの [+] ボタンをクリックまたはタップし、[計算フィールド] を選択します。
[計算フィールドの作成] 画面が開きます。
以下の手順を実行します。
-
新しい計算フィールドに名前を割り当てます。
-
数式 (式) を入力します。[フィールド] セクションで、すべての既存のフィールドのリストがら選択できます。1 つ以上のフィールドを使用して (選択したフィールド をクリックまたは角括弧で名前を入力) 数式を作成できます。[関数] セクションにリストされている定義済み関数のいずれかを選択して、または単純な数学計算を使用します (上記に表示)。
新しい計算フィールドは、フィールド リストの下部に表示されます。
上記の例では、集計がデータ フィールドに適用されていないグリッドの可視化で新しい計算フィールドが使用されます。事前計算フィールドは、ピボット グリッドでも使用できます。この場合、計算は事前計算フィールドで集計されたレコードに適用されます。
事後計算フィールド
データ エディターでデータ フィールドの集計を実行するピボット テーブルやその他の表示形式を使用する場合、事後計算フィールドを作成できます。事後計算フィールドは、すでに集計された値に数式を適用することによって常に作成されます。
事後計算フィールドを作成する手順:
- データ エディターでデータ ソースからフィールドを追加して、表示形式 (またはピボット テーブル) を作成します。
- [値] の横にある [F(x)] ボタンをクリック/タップして、[計算フィールドの作成] 画面を開きます。
- 計算フィールドに名前を付け、集計値に数式を適用します。注: 値のリストには、集計後に表示形式で使用したデータ フィールドが含まれています (Spend、Budget ではなく、Sum of Spend、Sum of Budget)。
データ エディターに含まれていないデータ ソースの他のフィールドを使用する場合は、[値] の横の [+] ボタンをクリックまたはタップして追加できます。事後計算フィールドは集計値のみで作成されるため、最初にデータ フィールドで実行する集計をドロップダウン リストから選択する必要があります。
手順 1 をスキップして、最初に事後計算フィールドを作成するか、表示形式で事後計算フィールドのみを使用することもできます。
大規模なデータセットを使用する場合、事後計算は事前計算よりパフォーマンスが向上します。
Reveal 定義済み関数の使用
事前計算フィールドと事後計算フィールドの両方で、Reveal で使用可能な機能のいずれかを使用できます。
-
集計: average、 averageif、 count、 countif、 max、 maxif、 min、 minif。
-
日付: date、 datevalue、 day、 formatdate、 fquarter、 semester、 fsemester、 fyear、 hour、 millisecond、 minute、 month、 monthname、 monthshortname、 applytimezone、 currenttimezone、 datetimefromunixts、 now、 quarter、 second、 time、 today、 weekday、 weeknum、 year。
-
数学: abs、 exp、 log、 log10、 mod、 rand、 randbetween、 sign、 sqrt、 trunc。
-
文字列: concatenate、 find、 len、 lower、 mid、 replace、 sortinterval、 trim、 upper。
IF 条件の制限。事前計算のフィールドの集計関数に含まれる場合、IF 条件には既知の制限があります。計算式内の IF 条件を確認するためにすべてのレコードを複数回調べる必要があり、パフォーマンスが低下する問題が発生するため、サポートされていません。:::
定義済み関数を使用せず計算フィールドを作成
定義済み関数を使用せずに計算フィールドを作成することもできます。たとえば、減算、除算、加算、乗算などの単純な数学計算用。こちらの表には、定義済み関数を使用しない例があります。
Reveal の関数を使用する際に注意すること
-
テキスト文字列は引用符で囲む必要があります。例えば、ロケール ("en") および日付書式 ("dd/mm/yyyy")。
-
数式に含まれるフィールドは角括弧で囲む必要があります。たとえば、HR データセットの [Wage]、[BirthDate]、[EmployeeID] などです。