@MODE

Essbaseの@MODE計算関数は、指定されたデータ・セットのモード(最も頻繁に発生する値)を返します。

構文

@MODE (SKIPNONE | SKIPMISSING | SKIPZERO | SKIPBOTH, XrangeList)

パラメータ

SKIPNONE

最頻値の計算中に、内容に関係なく、データ・セットで指定したすべてのセルを含めます。

SKIPMISSING

最頻値の計算中に、すべての#MISSING値をデータ・セットから除外します。

SKIPZERO

最頻値の計算中に、データ・セットからすべてのゼロ(0)値を除外します。

SKIPBOTH

最頻値の計算中に、すべてのゼロ(0)値と#MISSING値をデータ・セットから除外します。

XrangeList

最頻値が計算される数値のリスト。このトピック全体で、データ・セットと総称されます。

有効なメンバー名、メンバー名のカンマ区切りリスト、ディメンション間メンバー、またはメンバー・セット関数か範囲関数(@XRANGEを含む)からの戻り値にできます。

XrangeListの詳細は、範囲リスト・パラメータを参照してください。

ノート

  • データ・セット内の2つ以上の値が同じ頻度で発生する場合、Essbaseは値のリストを昇順でソートし、最頻値として最も高い頻度で発生する最小値を選択します。たとえば、データ・セットに[2,1,2,2,2,3,3,3,3]が含まれる場合、Essbaseはリストを[1,2,2,2,2,3,3,3,3]としてソートし、値[2]を最頻値として選択します。

  • データ・セットに重複する値が含まれていない場合、この関数はリスト内の最小値を最頻値として返します。たとえば、データ・セットに[2,4,7,10,14]が含まれている場合、@MODEは2を最頻値として返します。

  • #MISSINGがデータ・セットの最頻値である場合、SKIPMISSINGまたはSKIPBOTHが指定されていないかぎり、この関数は#MISSINGを返します。SKIPMISSINGまたはSKIPBOTHを指定し、データ・セット内のすべての値が#MISSINGの場合、この関数は#MISSINGを返します。SKIPZEROまたはSKIPBOTHを指定し、データ・セット内のすべての値が0の場合、この関数は#MISSINGを返します。

  • この関数を計算スクリプトで使用する場合は、FIX文内で使用します。FIXは必須ではありませんが、FIXを使用すると計算パフォーマンスが向上する場合があります。

  • スパース・ディメンションの広い範囲でこの関数を使用する場合は、計算機キャッシュのサイズを増やす必要がある場合があります。

次の例では、Centralリージョンで販売されたユニットの最頻値を計算し、@RANGEを使用してデータ・セットを生成します。

FIX (Central)
"Mode" = @MODE(SKIPMISSING,
   @RANGE(Sales,@CHILDREN(Central)));
ENDFIX

この例では、次のレポートが作成されます:

                       Colas   Actual    Jan
                             Units Sold    
                             ==========   
Units Sold   Illinois            3   
             Ohio                2   
             Wisconsin           3   
             Missouri          #MI   
             Iowa                0  
             Colorado            6  
               Central          14                 

Mode         Central             3 

次の例では、YearディメンションがSample Basicに追加されていることを前提としています。データ・セット内のディメンション間メンバーを使用して最頻値を計算します。

FIX(Product)
"Mode" = @MODE(SKIPMISSING,@XRANGE("2011"->"Sep", "2012"->"Mar"));
ENDFIX

前述の計算は、XrangeListで指定した次の多次元範囲で実行されます。


2011->Sep
2011->Oct
2011->Nov
2011->Dec
2012->Jan
2012->Feb
2012->Mar

関連項目