4D v16.3

Average

ホーム

 
4D v16.3
Average

Average 


 

Average ( series {; attributePath} ) -> 戻り値 
引数   説明
series  フィールド, 配列 in 平均を求めるデータ
attributePath  テキスト in 平均を取得したい属性のパス
戻り値  実数 in seriesの平均値

説明   

Averageは、seriesの平均値を返します。seriesがインデックスフィ-ルドの場合には、平均値を求めるためにインデックスが使用されます。

seriesに (1または2次元の) 配列を渡すこともできます。この場合配列は整数、倍長整数、または実数型でなければなりません。

このコマンドは、seriesがオブジェクト型フィールドである場合にのみ、テキスト型である任意のattributePath引数を受け入れます。これにより計算したい属性のパスを定義する事ができます。ネストされた属性に対しては標準のドット表記(例:"company.address.number")を使用して下さい。オブジェクトの属性名は大文字と小文字を区別するという点に注意して下さい。
数値型の属性のみ計算されます。
属性のパス内の値に数値型でないものがあった場合、それらは無視されます。

このコマンドが正しく実行されると、OKシステム変数は1に設定されます。ユーザが進捗サーモメータの停止ボタンをクリックするなどして処理が中断されると、OK変数は0に設定されます。

以下の例は、出力フォームのB0ブレークエリアにある変数vAverageに値を代入します。このコードは変数vAverageのオブジェクトメソッドです。オブジェクトメソッドは、レベル0のブレークが発生したときに実行されます:

 vAverage:=Average([Employees] Salary)

以下のメソッドは、ブレーク処理をアクティブにしてセレクション内のレコードを印刷するために呼び出されます:

 ALL RECORDS([Employees])
 ORDER BY([Employees];[Employees]LastNm;>)
 BREAK LEVEL(1)
 ACCUMULATE([Employees]Salary)
 FORM SET OUTPUT([Employees];"PrintForm")
 PRINT SELECTION([Employees])

Note: BREAK LEVELコマンドの引数は、印刷するレポートのブレーク数と同じ数でなければなりません。ブレーク処理に関する詳細は印刷コマンドを参照してください。

この例題ではセレクション中トップ15の平均点を計算します:

 ARRAY REAL($ArrGrades;0)
 QUERY([Exams];[Exams]Exam_Date=!11/07/01!)
 ORDER BY([Exams];[Exams]Exam_Grade;<)
 SELECTION TO ARRAY([Exams]Exam_Grade;$ArrGrades)
 ARRAY REAL($ArrGrades;15)
 vAverage:=Average($ArrGrades)

[Customer]テーブル内に、以下のようなデータを含む"full_Data"オブジェクトフィールドが格納されている場合を考えます:

以下の様な計算をする事ができます:

 C_REAL($vAvg)
 ALL RECORDS([Customer])
 $vAvg:=Average([Customer]full_Data;"age")
  //$vAvg は 44.46
 
 C_LONGINT($vTot)
 $vTot:=Sum([Customer]full_Data;"Children[].age")
  //$vTot は 105



参照 

ACCUMULATE
BREAK LEVEL
Max
Min
ORDER BY
PRINT SELECTION
Subtotal
Sum

 
プロパティ 

プロダクト: 4D
テーマ: 統計関数
番号: 2

このコマンドはOKシステム変数を更新しますThis command can be run in preemptive processes

 
履歴 

New
変更: 4D v11 SQL Release 3
変更: 4D v13
変更: 4D v16

 
ARTICLE USAGE

ランゲージリファレンス ( 4D v16)
ランゲージリファレンス ( 4D v16.1)
ランゲージリファレンス ( 4D v16.2)
ランゲージリファレンス ( 4D v16.3)