Maple 16 における Statistics の改善
Maple 16 では、Statistics パッケージが大幅に強化されています。改良点は以下のとおりです。
|
非整数値を含む離散分布
|
|
Maple リリース 16 から、非整数値を含む離散分布がサポートされるようになりました。
|
市場の例
|
|
屋台で、ある商人がゲームへの参加費を $5 に設定しているとします。このゲームに参加すると、4 つの封筒のうち、1 つの中身を受け取ることができます。4 つの封筒には、1/4 の確率でそれぞれ小額のお金が入っています。各封筒に入っている額は、$8.24、$3.77、$3.91、および $0.16 です。
受け取るお金の期待される額は、平均値として次のように求めることができます。 = 。これは、まったく魅力のない取引です。
さらに、このお金でピーナッツを買うことに興味があるものとします。諸経費のため、ピーナッツを少量買うことは、大量に買うよりもピーナッツ単位では高くなります。ピーナッツの納入業者は グラムのピーナッツを $ で売るつもりです ()。そのため、$5 では 250g のピーナッツを手に入れることができます。このゲームに参加した場合、受け取るピーナッツの期待される重さは、以下のようになります。
= 、または = 。
二乗が $8.24 という最も高い結果に非常に大きな利益をもたらすため、ゲームに参加した場合の期待される払戻金は、参加しなかった場合と比べて実質的に同じになります。
結果ごとの確率がすべて同じではない場合 (またはすべて単一の値の小さな倍数の場合)、EmpiricalDistribution の新しいオプション probabilities を使用することができます。より精密なモデルでは、封筒の重さまたは量が、どの封筒が選ばれるかの可能性に影響を与える場合があります。たとえば、確率を以下のように仮定します。
一番上の行は当初の金額 (ドル) を表し、下の行は確率を表します (この情報は、データテーブル機能を使用する変数 に関係しています)。上記と同じ計算を行うと、次のようになります。
=
期待される結果は高くなりますが、価格には届きません。ただし、期待される額の重みは次のようになります。 = または = 。
ゲームに参加した場合、払戻金が増えることがわかります。
|
|
カスタム離散分布のサンプリング
|
|
以前のリリースの Maple は、カスタム離散分布のサンプリングに対応していませんでした。この機能は Maple 16 で追加されました。
| (1.3.1) |
| (1.3.2) |
|
|
|
パラメータ推定が効率的になり、より多くのケースを扱えるようになりました。
|
|
Maple 16 には、多くの分布に対して最大尤度のパラメータ推定を行うため、より効率的かつ堅牢なルーチンが用意されています。以下は、約 10 倍高速化された例です。
| (2.1) |
最尤推定法を使用して、同時に複数のパラメータ推定を行うこともできるようになりました。
| (2.2) |
詳細は、MaximumLikelihoodEstimate ヘルプページを参照してください。
|
|
行列データ集合
|
|
Maple 16 の Statistics パッケージが更新され、Matrix データセットの処理が改善されました。以前のリリースでは、Statistics パッケージで Matrix データタイプを使用できない場合がありました。Maple 16 では、Statistics パッケージのコマンドが更新され、Matrix データセットを処理できるようになりました。これらのコマンドは、入力 Matrix の各列で個別に動作します。さらに、Maple 16 では、1 つの列の値に基づいて、データを部分行列に分割することができます。その結果、データを整理して異なる設定で表示することができます。これにより、特定の傾向を観察しやすくなります。詳細は、SplitByColumn ヘルプページを参照してください。
例として、以下の住宅データを考えてみます。最初の列は寝室数、2 列目は平方フィート数、3 列目は価格 (ドル) です。このデータテーブルは変数 に対応しています。
SplitByColumn コマンドを使用すると、寝室数に基づいてデータを簡単に並べ替えることができます。
| (3.1) |
寝室数が 3 の住宅の平均面積および平均価格を知りたい場合、次のように求めることができます。
| (3.2) |
| (3.3) |
寝室数が 3 の住宅の平均は、面積が約 960 平方フィートで価格が約 $100100 であることがわかります。
|
|
ライブプロット
|
|
Maple 16 で新しく追加されたパレットを使用すると、面グラフ、ヒストグラム、円グラフ、散布図などを含む統計プロットの作成やカスタマイズを簡単に行うことができます。
パレットアイテムをドキュメントに挿入するには、ライブプロットパレットでプロットタイプをクリックします。データセットを表示するには、プレースホルダをユーザーのデータセットで置き換えます。オプションをクリックしてプロットをカスタマイズすることができます。詳細は、Maple 16 のライブプロット を参照してください。
|
|
可変幅のヒストグラム
|
|
現象によって、その傾向が特定の領域では急激なヒストグラム変化を見せ、別の領域ではそれほどの変化がない、という場合があります。現象の変化が急激な領域ではヒストグラムを非常に細かく表示する必要がありますが、それ以外の領域では過度になり、紛らわしい表示になります。このような場合、ヒストグラムに対して Maple 16 の新機能である可変幅の範囲を使用することができます。
たとえば、2 つのプロセス (パラメータ 3 および 2.5 を持つベータ分布、または平均が -2 で標準偏差が 5 の正規分布) のいずれかから取得されたデータがあるとします。それぞれ 10000 要素あります。
デフォルトのヒストグラムだと粗すぎます。
ただし、ヒストグラムのビン幅をあまり狭くすると、空のビンが多数表示されることになります。
以下のコマンドは、点の数が少ない箇所では広い範囲を使用します (長方形の高さは所定の範囲内での点の密度に比例し、すべての長方形の面積の合計は 1 です)。
詳細は、Histogram を参照してください。
|
|
ScatterPlot3D
|
|
•
|
各行の最初の 2 つのエントリのデータは (-) 平面で規則的な格子になる必要はありません。
|
>
|
X := Sample(Uniform(-50,50),175):
|
>
|
Y := Sample(Uniform(-50,50),175):
|
>
|
Zerror := Sample(Normal(0,100),175):
|
>
|
Z := Array(1..175,(i)->-(sin(Y[i]/20)*(X[i]-6)^2+(Y[i]-7)^2+Zerror[i])):
|
>
|
XYZ := Matrix([[X],[Y],[Z]],datatype=float[8])^%T;
|
| (6.1) |
>
|
ScatterPlot3D(XYZ, axes=box, orientation=[20,0,0]);
|
>
|
ScatterPlot3D(XYZ, lowess, grid=[25,25], axes=box, orientation=[20,70,0]);
|
|
|
円グラフの改良
|
|
Maple 16 では、3 次元の円グラフおよび環状の円グラフを作成できるようになりました。
その他の改良点として、円グラフに新しいデフォルトの色付けが導入されました。円グラフの色の範囲を指定した場合、両端の色の範囲が円グラフの向かい合う箇所にプロットされます。円グラフに対する色の勾配は時計回りに変化します。円グラフの色は同じ色相内で保たれます。
さらに、扇形切片のラベルは、適切なコントラストになるように自動的に色付けされます。
>
|
dataset := ["A" = 5, "B" = 4, "C" = 3, "D" = 2, "E" = 3, "F" = 4, "G" = 5]:
|
>
|
Statistics:-PieChart(dataset, color = "CornflowerBlue" .. "DarkBlue", annular = true, render3d = true);
|
|
|