分析関数は、ウィンドウと呼ばれるテーブル内の行グループを対象に計算を行います。分析関数を使用すると、現在の行を基準に、データの移動ウィンドウに基づく合計や計算を実行できます。適用対象の行に対して1つの出力内容のみを返す標準の集計関数とは異なり、分析関数の結果にはすべての行が保持されます。
Zoho DataPrepには、合計315個の組み込み関数が用意されています。このページでは、16個の分析関数をリストで紹介します。残りの299個の関数は[数式を追加]の加工で使用できます。詳しくは、数式列の追加に使用できる関数をご参照ください。
現在の行と、その前後にある指定された数の行を対象に、移動合計値を返します。
| 名前 |
説明 |
|---|---|
|
col1 小数 |
基準となる列を指定します。パラメーターは入力必須です。数値の列、数値を出力する式のいずれかを指定する必要があります。 |
|
rowsbefore 数値 |
(任意)現在の行の前にある行数を指定します。初期値は-1です。 |
|
rowsafter 数値 |
(任意)現在の行の後にある行数を指定します。初期値は0です。 |
| 関数 |
行の並べ替え。 |
行のグループ化。 |
|---|---|---|
| rolling_sum('売上', 1, 1) |
日付 |
商品 |
| 日付 |
商品 |
価格 |
|---|---|---|
| 10/04/2012 |
文房具 |
100 |
| 22/01/2012 |
文房具 |
200 |
| 21/02/2012 |
食料品 |
120 |
| 12/05/2012 |
食料品 |
100 |
| 15/06/2012 |
食料品 |
110 |
| 日付 |
商品 |
価格 |
移動合計 |
|---|---|---|---|
| 21/02/2012 |
食料品 |
120 |
220 |
| 12/05/2012 |
食料品 |
100 |
330 |
| 15/06/2012 |
食料品 |
110 |
210 |
| 22/01/2012 |
文房具 |
200 |
300 |
| 10/04/2012 |
文房具 |
100 |
300 |
メモ:任意のパラメーターはスキップでき、初期値が自動的に適用されます。例:rolling_sum(`col1`)はrolling_sum(`col1`, -1, 0)と同じです。
現在の行の前後にある指定した数の行で構成されるウィンドウから、移動平均値を返します。
| 名前 |
説明 |
|---|---|
|
col1 小数 |
参照元の列を指定します。パラメーターは入力必須です。数値の列、数値を出力する式のいずれかを指定する必要があります。 |
|
rowsbefore 数値 |
(任意)現在の行の前にある行数を指定します。初期値は-1で、現在の行より前にあるすべての行が含まれます。 |
|
rowsafter 数値 |
(任意)現在の行の後にある行数を指定します。初期値は0で、現在の行が含まれます。 |
| 関数 |
行の並べ替え。 |
行のグループ化。 |
|---|---|---|
| rolling_avg(`売上`, 1, 1) |
日付 |
商品 |
| 日付 |
商品 |
価格 |
|---|---|---|
| 10/04/2012 |
文房具 |
100 |
| 22/01/2012 |
文房具 |
200 |
| 21/02/2012 |
食料品 |
120 |
| 12/05/2012 |
食料品 |
100 |
| 15/06/2012 |
食料品 |
110 |
| 日付 |
商品 |
価格 |
移動平均値 |
|---|---|---|---|
| 21/02/2012 |
食料品 |
120 |
110 |
| 12/05/2012 |
食料品 |
100 |
110 |
| 15/06/2012 |
食料品 |
110 |
105 |
| 22/01/2012 |
文房具 |
200 |
150 |
| 10/04/2012 |
文房具 |
100 |
150 |
メモ:任意のパラメーターはスキップでき、初期値が自動的に適用されます。たとえば、rolling_avg(`col1`)はrolling_avg(`col1`, -1, 0)と同じです。
現在の行の前後にある指定された行数で構成される行の範囲から、移動最小値を返します。
| 名前 |
説明 |
|---|---|
|
col1 小数 |
基準となる列を指定します。パラメーターは入力必須です。数値の列、数値を出力する式のいずれかを指定する必要があります。 |
|
rowsbefore 数値 |
(任意)現在の行の前にある行数を指定します。初期値は-1で、現在の行より前にあるすべての行が含まれます。 |
|
rowsafter 数値 |
(任意)現在の行の後にある行数を指定します。初期値は0で、現在の行が含まれます。 |
| 関数 |
行の並べ替え。 |
行のグループ化。 |
|---|---|---|
| rolling_min(`売上`, 1, 1) |
日付 |
商品 |
| 日付 |
商品 |
価格 |
|---|---|---|
| 10/04/2012 |
文房具 |
100 |
| 22/01/2012 |
文房具 |
200 |
| 21/02/2012 |
食料品 |
120 |
| 12/05/2012 |
食料品 |
100 |
| 15/06/2012 |
食料品 |
110 |
| 日付 |
商品 |
価格 |
移動最小値 |
|---|---|---|---|
| 21/02/2012 |
食料品 |
120 |
100 |
| 12/05/2012 |
食料品 |
100 |
100 |
| 15/06/2012 |
食料品 |
110 |
100 |
| 22/01/2012 |
文房具 |
200 |
100 |
| 10/04/2012 |
文房具 |
100 |
100 |
メモ:任意のパラメーターは省略できます。省略した場合、初期値が自動的に適用されます。たとえば、rolling_min(`col1`)はrolling_min(`col1`, -1, 0)と同じです。
現在の行の前後にある指定された数の行で構成されるウィンドウから、移動最大値を返します。
| 名前 |
説明 |
|---|---|
|
col1 小数 |
基準となる列を指定します。パラメーターは入力必須です。数値の列、数値を出力する式のいずれかを指定する必要があります。 |
|
rowsbefore 数値 |
(任意)現在の行の前にある行数を指定します。初期値は-1で、現在の行より前にあるすべての行が含まれます。 |
|
rowsafter 数値 |
(任意)現在の行の後にある行数を指定します。初期値は0で、現在の行が含まれます。 |
| 関数 |
行の並べ替え。 |
行のグループ化。 |
|---|---|---|
| rolling_max(`売上` , 1 , 1) |
日付 |
商品 |
| 日付 |
商品 |
価格 |
|---|---|---|
| 10/04/2012 |
文房具 |
100 |
| 22/01/2012 |
文房具 |
200 |
| 21/02/2012 |
食料品 |
120 |
| 12/05/2012 |
食料品 |
100 |
| 15/06/2012 |
食料品 |
110 |
| 日付 |
商品 |
価格 |
移動最大値 |
|---|---|---|---|
| 21/02/2012 |
食料品 |
120 |
120 |
| 12/05/2012 |
食料品 |
100 |
120 |
| 15/06/2012 |
食料品 |
110 |
110 |
| 22/01/2012 |
文房具 |
200 |
200 |
| 10/04/2012 |
文房具 |
100 |
200 |
メモ:任意のパラメーターはスキップでき、初期値が自動的に適用されます。たとえば、rolling_max(`col1`)はrolling_max(`col1`, -1, 0)と同じです。
現在の行の前後にある指定された数の行で構成されるウィンドウから、移動標準偏差の値を返します。
| 名前 |
説明 |
|---|---|
|
col1 小数 |
基準となる列を指定します。パラメーターは入力必須です。数値の列、数値を出力する式のいずれかを指定する必要があります。 |
|
rowsbefore 数値 |
(任意)現在の行の前にある行数を指定します。初期値は-1で、現在の行より前にあるすべての行が含まれます。 |
|
rowsafter 数値 |
(任意)現在の行の後にある行数を指定します。初期値は0で、現在の行が含まれます。 |
| 関数 |
行の並べ替え。 |
行のグループ化。 |
|---|---|---|
| rolling_stddev(`売上`, 1, 1) |
日付 |
商品 |
| 日付 |
商品 |
価格 |
|---|---|---|
| 10/04/2012 |
文房具 |
100 |
| 22/01/2012 |
文房具 |
200 |
| 21/02/2012 |
食料品 |
120 |
| 12/05/2012 |
食料品 |
100 |
| 15/06/2012 |
食料品 |
110 |
| 日付 |
商品 |
価格 |
移動標準偏差 |
|---|---|---|---|
| 21/02/2012 |
食料品 |
120 |
10 |
| 12/05/2012 |
食料品 |
100 |
8.16496580927726 |
| 15/06/2012 |
食料品 |
110 |
5 |
| 22/01/2012 |
文房具 |
200 |
50 |
| 10/04/2012 |
文房具 |
100 |
50 |
メモ:任意のパラメーターは省略でき、その場合は初期値が自動的に適用されます。たとえば、rolling_stddev(`col1`)はrolling_stddev(`col1`, -1, 0)と同じです。
現在の行の前後にある指定された数の行で構成される行ウィンドウから、移動分散値を返します。
| 名前 |
説明 |
|---|---|
|
col1 小数 |
基準となる列を指定します。パラメーターは入力必須です。数値の列、数値を出力する式のいずれかを指定する必要があります。 |
|
rowsbefore 数値 |
(任意)現在の行の前にある行数を指定します。初期値は-1で、現在の行より前にあるすべての行が含まれます。 |
|
rowsafter 数値 |
(任意)現在の行の後にある行数を指定します。初期値は0で、現在の行が含まれます。 |
| 関数 |
行の並べ替え: |
行のグループ化: |
|---|---|---|
| rolling_variance(`売上`,1,1) |
日付 |
商品 |
| 日付 |
商品 |
価格 |
|---|---|---|
| 10/04/2012 |
文房具 |
100 |
| 22/01/2012 |
文房具 |
200 |
| 21/02/2012 |
食料品 |
120 |
| 12/05/2012 |
食料品 |
100 |
| 15/06/2012 |
食料品 |
110 |
| 日付 |
商品 |
価格 |
移動分散 |
|---|---|---|---|
| 21/02/2012 |
食料品 |
120 |
100 |
| 12/05/2012 |
食料品 |
100 |
66.66666666666667 |
| 15/06/2012 |
食料品 |
110 |
25 |
| 22/01/2012 |
文房具 |
200 |
2,500 |
| 10/04/2012 |
文房具 |
100 |
2,500 |
メモ:任意のパラメーターはスキップでき、初期値が自動的に適用されます。例:rolling_variance(`col1`)はrolling_variance(`col1`, -1, 0)と同じです。
現在の行の前後にある指定行数からなる行範囲で、空の値(null)ではない値の移動件数を返します。
| 名前 |
説明 |
|---|---|
|
col1 小数 |
基準となる列を指定します。パラメーターは入力必須です。数値の列、数値を出力する式のいずれかを指定する必要があります。 |
|
rowsbefore 数値 |
(任意)現在の行の前にある行数を指定します。初期値は-1で、現在の行より前にあるすべての行が含まれます。 |
|
rowsafter 数値 |
(任意)現在の行の後にある行数を指定します。初期値は0で、現在の行が含まれます。 |
| 関数 |
行の並べ替え。 |
行のグループ化。 |
|---|---|---|
| rolling_count(`売上`, 1, 1) |
日付 |
商品 |
| 日付 |
商品 |
価格 |
|---|---|---|
| 10/04/2012 |
文房具 |
100 |
| 22/01/2012 |
文房具 |
200 |
| 21/02/2012 |
食料品 |
120 |
| 12/05/2012 |
食料品 |
100 |
| 15/06/2012 |
食料品 |
110 |
| 日付 |
商品 |
価格 |
移動件数 |
|---|---|---|---|
| 21/02/2012 |
食料品 |
120 |
2 |
| 12/05/2012 |
食料品 |
100 |
3 |
| 15/06/2012 |
食料品 |
110 |
2 |
| 22/01/2012 |
文房具 |
200 |
2 |
| 10/04/2012 |
文房具 |
100 |
2 |
メモ:任意のパラメーターは省略でき、その場合は初期値が自動的に適用されます。たとえば、rolling_count(`col1`)はrolling_count(`col1`, -1, 0)と同じです。
並べ替えやグループ化の条件に基づいて、一連の行から行番号を出力します。
| 関数 |
行の並べ替え。 |
行のグループ化。 |
|---|---|---|
| row_number() |
日付 |
商品 |
| 日付 |
商品 |
価格 |
|---|---|---|
| 10/04/2012 |
文房具 |
100 |
| 22/01/2012 |
文房具 |
200 |
| 21/02/2012 |
食料品 |
120 |
| 12/05/2012 |
食料品 |
100 |
| 15/06/2012 |
食料品 |
110 |
| 日付 |
商品 |
価格 |
行番号 |
|---|---|---|---|
| 21/02/2012 |
食料品 |
120 |
1 |
| 12/05/2012 |
食料品 |
100 |
2 |
| 15/06/2012 |
食料品 |
110 |
3 |
| 22/01/2012 |
文房具 |
200 |
1 |
| 10/04/2012 |
文房具 |
100 |
2 |
現在の行の前後にある指定した行数で構成される範囲内で、列の空のセルをそれより前の行にある最も近い空でない値で補完し、その列の値を返します。
| 名前 |
説明 |
|---|---|
|
col1 小数 |
元の列を指定します。パラメーターは入力必須です。数値の列、数値を出力する式のいずれかを指定する必要があります。 |
|
fillEmpty 真偽値 |
値が入力されていない行を補完する場合は、「true」(真)を指定します。補完しない場合は「false」(偽)を指定します。 |
|
rowsbefore 数値 |
(任意)現在の行の前にある行数を指定します。初期値は-1で、現在の行より前にあるすべての行が対象になります。 |
|
rowsafter 数値 |
(任意)現在の行の後にある行数を指定します。初期値は0で、現在の行が対象になります。 |
| 関数 |
行の並べ替え。 |
行のグループ化。 |
|---|---|---|
| fill(`Sales`, false, 1 , 1) |
日付 |
商品 |
| 日付 |
商品 |
価格 |
|---|---|---|
| 10/04/2012 |
文房具 |
100 |
| 22/01/2012 |
食料品 |
|
| 21/02/2012 |
食料品 |
|
| 12/05/2012 |
食料品 |
120 |
| 15/06/2012 |
食料品 |
120 |
| 日付 |
商品 |
価格 |
補完 |
|---|---|---|---|
| 22/01/2012 |
食料品 |
||
| 21/02/2012 |
食料品 |
120 |
|
| 12/05/2012 |
食料品 |
120 |
120 |
| 15/06/2012 |
食料品 |
120 |
120 |
| 10/04/2012 |
文房具 |
100 |
100 |
メモ:任意のパラメーターは省略でき、その場合は初期値が自動的に適用されます。例:fill(`col1`, `fillEmpty`)はfill(`col1`, `fillEmpty`, -1, 0)と同じです。
列内で、現在の行から指定した行数分、前にあるセルの値を出力します。
| 名前 |
説明 |
|---|---|
|
col1 テキスト |
元データの列を指定します。このパラメーターには、任意のデータ型の列を指定できます。 |
|
rowsbefore 数値 |
現在の行の前にある行数を指定します。 |
| 関数 |
行の並べ替え。 |
行のグループ化。 |
|---|---|---|
| lag(`売上`, 1) |
日付 |
商品 |
| 日付 |
商品 |
価格 |
|---|---|---|
| 10/04/2012 |
文房具 |
100 |
| 22/01/2012 |
文房具 |
200 |
| 21/02/2012 |
食料品 |
120 |
| 12/05/2012 |
食料品 |
100 |
| 15/06/2012 |
食料品 |
110 |
| 日付 |
商品 |
価格 |
ラグ |
|---|---|---|---|
| 21/02/2012 |
食料品 |
120 |
|
| 12/05/2012 |
食料品 |
100 |
120 |
| 15/06/2012 |
食料品 |
110 |
100 |
| 22/01/2012 |
文房具 |
200 |
|
| 10/04/2012 |
文房具 |
100 |
200 |
列内で、現在の行から指定した行数分、後にあるセルの値を出力します。
| 名前 |
説明 |
|---|---|
|
col1 テキスト |
元データの列を指定します。必須パラメーターで、文字列型の列を指定できます。 |
|
rowsafter 数値 |
現在の行の後にある行数を指定します。 |
| 関数 |
行の並べ替え: |
行のグループ化: |
|---|---|---|
| lead(`売上`, 1) |
日付 |
製品 |
| 日付 |
製品 |
価格 |
|---|---|---|
| 10/04/2012 |
文房具 |
100 |
| 22/01/2012 |
文房具 |
200 |
| 21/02/2012 |
食料品 |
120 |
| 12/05/2012 |
食料品 |
100 |
| 15/06/2012 |
食料品 |
110 |
| 日付 |
製品 |
価格 |
Lead |
|---|---|---|---|
| 21/02/2012 |
食料品 |
120 |
100 |
| 12/05/2012 |
食料品 |
100 |
110 |
| 15/06/2012 |
食料品 |
110 |
|
| 22/01/2012 |
文房具 |
200 |
100 |
| 10/04/2012 |
文房具 |
100 |
行の並べ替え条件とグループ化条件に基づいて、行ウィンドウ内の順位を返します。同順位がある場合、それ以降の行では次の順位がスキップされます。
| 関数 |
行の並べ替え。 |
行のグループ化。 |
|---|---|---|
| rank() |
日付 |
商品 |
| 日付 |
商品 |
価格 |
|---|---|---|
| 10/04/2012 |
文房具 |
100 |
| 10/05/2012 |
文房具 |
200 |
| 21/02/2012 |
食料品 |
120 |
| 12/05/2012 |
食料品 |
100 |
| 15/06/2012 |
食料品 |
110 |
| 日付 |
商品 |
価格 |
ランク |
|---|---|---|---|
| 21/02/2012 |
食料品 |
120 |
1 |
| 12/05/2012 |
食料品 |
100 |
1 |
| 15/06/2012 |
食料品 |
110 |
3 |
| 10/04/2012 |
文房具 |
100 |
1 |
| 10/05/2012 |
文房具 |
200 |
2 |
並べ替え条件とグループ化条件に基づいて、行のウィンドウにおける密な順位を返します。同順位の場合、順位はスキップされません。
| 関数 |
行の並べ替え。 |
行のグループ化。 |
|---|---|---|
| dense_rank() |
日付 |
商品 |
| 日付 |
商品 |
価格 |
|---|---|---|
| 10/04/2012 |
文房具 |
100 |
| 10/05/2012 |
文房具 |
200 |
| 20/02/2012 |
食料品 |
120 |
| 21/02/2012 |
食料品 |
100 |
| 15/06/2012 |
食料品 |
110 |
| 日付 |
商品 |
価格 |
密な順位 |
|---|---|---|---|
| 20/02/2012 |
食料品 |
120 |
1 |
| 21/02/2012 |
食料品 |
100 |
1 |
| 15/06/2012 |
食料品 |
110 |
2 |
| 10/04/2012 |
文房具 |
100 |
1 |
| 10/05/2012 |
文房具 |
200 |
2 |
行のウィンドウから累積分布の値を返します。
| 関数 |
行の並べ替え: |
行のグループ化: |
|---|---|---|
| cumulative_distribution() |
日付 |
製品 |
| 日付 |
製品 |
価格 |
|---|---|---|
| 10/04/2012 |
文房具 |
100 |
| 22/01/2012 |
文房具 |
200 |
| 21/02/2012 |
食料品 |
120 |
| 12/05/2012 |
食料品 |
100 |
| 15/06/2012 |
食料品 |
110 |
| 日付 |
製品 |
価格 |
累積分布 |
|---|---|---|---|
| 21/02/2012 |
食料品 |
120 |
0.3333 |
| 12/05/2012 |
食料品 |
100 |
0.6667 |
| 15/06/2012 |
食料品 |
110 |
1 |
| 22/01/2012 |
文房具 |
200 |
0.5 |
| 10/04/2012 |
文房具 |
100 |
1 |
行のグループに対して、式の最初の値を返します。ignoreNullsが真の場合、空の値はスキップされます。すべての値が空の値の場合は、デフォルト値を使用できます。
| 名前 |
説明 |
|---|---|
|
value テキスト |
最初の値を取得する元データの列を指定します。 |
|
ignoreNulls 数値 |
任意です。空の値をスキップし、空の値ではない最初の値を返すには、1に設定します。デフォルトは0です。 |
|
default テキスト |
任意です。すべての値が空の値の場合に返すデフォルト値を指定します。 |
| 関数 |
行の並べ替え。 |
行のグループ化。 |
|---|---|---|
| first('Price') |
日付 |
商品 |
| 日付 |
商品 |
価格 |
|---|---|---|
| 10/04/2012 |
文房具 |
100 |
| 22/01/2012 |
文房具 |
空の値 |
| 21/02/2012 |
食料品 |
空の値 |
| 12/05/2012 |
食料品 |
100 |
| 15/06/2012 |
食料品 |
110 |
| 日付 |
商品 |
価格 |
最初の値 |
|---|---|---|---|
| 10/04/2012 |
文房具 |
100 |
100 |
| 22/01/2012 |
文房具 |
空の値 |
100 |
| 21/02/2012 |
食料品 |
空の値 |
100 |
| 12/05/2012 |
食料品 |
100 |
100 |
| 15/06/2012 |
食料品 |
110 |
100 |
メモ:任意のパラメーターはスキップでき、デフォルト値が自動的に適用されます。たとえば、first(`value`)はfirst(`value`, 0, '')と同じです。
行のグループに対して、式の最後の値を返します。ignoreNullsを1に設定すると、空の値はスキップされます。すべての値が空の値の場合は、デフォルト値を使用できます。
| 名前 |
説明 |
|---|---|
|
value テキスト |
最後の値を取得する元データの列を指定します。 |
|
ignoreNulls 数値 |
任意です。空の値(null)をスキップして、空の値(null)ではない最後の値を返すには、1に設定します。初期値は0です。 |
|
default テキスト |
任意です。すべての行が空の値(null)の場合に返す初期値を指定します。 |
| 関数 |
行の並べ替え: |
行のグループ化: |
|---|---|---|
| last('Price') |
日付 |
商品 |
| 日付 |
商品 |
価格 |
|---|---|---|
| 10/04/2012 |
文房具 |
100 |
| 22/01/2012 |
文房具 |
200 |
| 21/02/2012 |
食料品 |
120 |
| 12/05/2012 |
食料品 |
100 |
| 15/06/2012 |
食料品 |
110 |
| 日付 |
商品 |
価格 |
最後の値 |
|---|---|---|---|
| 21/02/2012 |
食料品 |
120 |
110 |
| 15/06/2012 |
食料品 |
110 |
110 |
| 12/05/2012 |
食料品 |
100 |
110 |
| 22/01/2012 |
文房具 |
200 |
100 |
| 10/04/2012 |
文房具 |
100 |
100 |
メモ:任意のパラメーターはスキップでき、その場合は初期値が自動的に適用されます。例:last(`value`)はlast(`value`, 0, '')と同じです。
各ウィンドウパーティションの行を、順序付けされたn個の区分に分割し、各行の区分番号を返します。
| 名前 | 説明 |
|---|---|
|
n 数値 |
行を分割する、順序付けされた区分の数を指定します。 |
| 関数 | 行の並べ替え。 | 行のグループ化。 |
|---|---|---|
| ntile(2) | 日付 | 商品 |
|
入力内容
|
出力内容
|