LINESTX

最小二乗法を使用して、指定されたデータに最適な直線を計算し、その線を記述するテーブルを返します。 テーブル内の各行に対して評価された式の結果のデータ。 この線の等式は、y = Slope1*x1 + Slope2*x2 + ... + Intercept という形式です。

構文

LINESTX ( <table>, <expressionY>, <expressionX>[, …][, <const>] )

パラメーター

用語 定義
テーブル 式が評価される行を含むテーブル。
expressionY 既知の y 値を取得するために、テーブルの各行に対して評価される式。 スカラー型が必要です。
expressionX 既知の x 値を取得するために、テーブルの各行に対して評価される式。 スカラー型が必要です。 少なくとも 1 つは指定する必要があります。
const (省略可能) 定数 Intercept を強制的に 0 にするかどうかを指定する定数 TRUE/FALSE 値。
TRUE の場合、または省略すると、Intercept 値は通常どおりに計算されます。FALSE の場合、Intercept 値は 0 に設定されます。

戻り値

行と追加の統計を記述する 1 行のテーブル。 使用可能な列は次のとおりです。

  • Slope1Slope2、...、SlopeN: 各 x 値に対応する係数;
  • Intercept: 切片値;
  • StandardErrorSlope1StandardErrorSlope2、...、StandardErrorSlopeN: 係数 Slope1Slope2、...、SlopeN の標準誤差値;
  • StandardErrorIntercept: 定数 Intercept の標準エラー値;
  • CoefficientOfDetermination: 決定係数 (r²)。 推定値と実際の y 値を比較します。値の範囲は 0 から 1 です。値が大きいほど、サンプルの相関関係が高くなります;
  • StandardError: y 推定値の標準誤差;
  • FStatistic: F 統計、または F 観測値。 F 統計を使用して、依存と独立変数の間で観測された関係が偶然発生するかどうかを判断します;
  • DegreesOfFreedom: 自由度。 この値を使用すると、統計テーブルで F クリティカル値を見つけ、モデルの信頼度レベルを判断するのに役立ちます;
  • RegressionSumOfSquares: 回帰平方和;
  • ResidualSumOfSquares: 残差平方和。

例 1

次の DAX クエリを実行します。

DEFINE VAR TotalSalesByRegion = SUMMARIZECOLUMNS(
    'Sales Territory'[Sales Territory Key],
    'Sales Territory'[Population],
    "Total Sales", SUM(Sales[Sales Amount])
)
EVALUATE LINESTX(
    'TotalSalesByRegion',
    [Total Sales],
    [Population]
)

10 列の単一行テーブルを返します。

Slope1 Intercept StandardErrorSlope1 StandardErrorIntercept CoefficientOfDetermination
6.42271517588 -410592.76216 0.24959467764561 307826.343996223 0.973535860750193
StandardError FStatistic DegreesOfFreedom RegressionSumOfSquares ResidualSumOfSquares
630758.1747292 662.165707642 18 263446517001130 7161405749781.07
  • Slope1Intercept: 計算された線形モデルの係数;
  • StandardErrorSlope1StandardErrorIntercept: 上記の係数の標準誤差値;
  • CoefficientOfDeterminationStandardErrorFStatisticDegreesOfFreedomRegressionSumOfSquares および ResidualSumOfSquares: モデルに関する回帰統計。

特定の販売区域に対して、このモデルは次の式で総売上を予測します。

Total Sales = Slope1 * Population + Intercept

例 2

次の DAX クエリを実行します。

DEFINE VAR TotalSalesByCustomer = SUMMARIZECOLUMNS(
    'Customer'[Customer ID],
    'Customer'[Age],
    'Customer'[NumOfChildren],
    "Total Sales", SUM(Sales[Sales Amount])
)
EVALUATE LINESTX(
    'TotalSalesByCustomer',
    [Total Sales],
    [Age],
    [NumOfChildren]
)

12 列の単一行テーブルを返します。

Slope1 Slope2 Intercept StandardErrorSlope1
69.0435458093763 33.005949841721 -871.118539339539 0.872588875481658
StandardErrorSlope2 StandardErrorIntercept CoefficientOfDetermination StandardError
6.21158863903435 26.726292527427 0.984892920482022 68.5715034014342
FStatistic DegreesOfFreedom RegressionSumOfSquares ResidualSumOfSquares
3161.91535144391 97 29734974.9782379 456098.954637092

特定の顧客に対して、このモデルは次の式で総売上を予測します。

Total Sales = Slope1 * Age + Slope2 * NumOfChildren + Intercept

LINEST
統計関数