Main Content

plotDriftStatus

データ ドリフトを検定した変数についての p 値と信頼区間をプロット

R2022a 以降

    説明

    plotDriftStatus(DDiagnostics) は、detectdrift の呼び出しでドリフト検出用に指定された各変数についての並べ替え検定の推定 p 値と共に、それぞれの推定 p 値の信頼区間を誤差範囲を使用してプロットします。この関数は警告しきい値とドリフトしきい値もプロットし、p 値とその信頼区間をそれぞれのドリフト ステータスに従って色分けします。

    detectdrift の呼び出しで EstimatePValues の値を false に設定した場合、plotDriftStatus はプロットを生成せず、代わりに警告を返します。

    plotDriftStatus(DDiagnostics,Variables=variables) は、variables で指定された変数についてのドリフト ステータスをプロットします。

    plotDriftStatus(ax,___) は、上記の構文におけるいずれかの入力引数の組み合わせを使用して、gca ではなく ax の座標軸にプロットします。

    EB = plotDriftStatus(___) は、誤差範囲プロットを作成し、ErrorBar オブジェクトの配列 EB を返します。EB は誤差範囲のプロパティを調べたり変更したりするために使用します。詳細については、ErrorBar のプロパティ を参照してください。

    [EB,CL] = plotDriftStatus(___) は、ドリフトしきい値と警告しきい値の ConstantLine オブジェクトの配列 CL を追加で返します。CLConstantLine オブジェクトの配列です。CL はラインのプロパティを調べたり変更したりするために使用します。詳細については、ConstantLine のプロパティ を参照してください。

    すべて折りたたむ

    3 つの変数をもつベースライン データとターゲット データを生成します。ターゲット データで 2 つ目と 3 つ目の変数の分布パラメーターを変化させます。

    rng('default') % For reproducibility
    baseline = [normrnd(0,1,100,1),wblrnd(1.1,1,100,1),betarnd(1,2,100,1)];
    target = [normrnd(0,1,100,1),wblrnd(1.2,2,100,1),betarnd(1.7,2.8,100,1)];

    すべての変数についての並べ替え検定を実行して、ベースライン データとターゲット データの間のドリフトを調べます。

    DDiagnostics = detectdrift(baseline,target)
    DDiagnostics = 
      DriftDiagnostics
    
                  VariableNames: ["x1"    "x2"    "x3"]
           CategoricalVariables: []
                    DriftStatus: ["Stable"    "Drift"    "Warning"]
                        PValues: [0.3850 0.0050 0.0910]
            ConfidenceIntervals: [2×3 double]
        MultipleTestDriftStatus: "Drift"
                 DriftThreshold: 0.0500
               WarningThreshold: 0.1000
    
    
      Properties, Methods
    
    

    推定 "p" 値の 95% 信頼区間を表示します。

    DDiagnostics.ConfidenceIntervals
    ans = 2×3
    
        0.3547    0.0016    0.0739
        0.4160    0.0116    0.1106
    
    

    3 つのすべての変数についてのドリフト ステータスをプロットします。

    plotDriftStatus(DDiagnostics)

    plotDriftStatus は、推定 "p" 値の信頼区間を誤差範囲を使用してプロットします。また、信頼限界をドリフトしきい値および警告しきい値と比較し、各変数のドリフト ステータスを異なる色を使用して示します。1 つ目の変数については、"p" 値の信頼限界の下限が警告しきい値より高くなっています。そのため、1 つ目の変数のドリフト ステータスは Stable であり、青色で示されています。3 つ目の変数については、"p" 値の信頼限界の下限が警告しきい値より低くなっていますが、ドリフトしきい値よりは高くなっています。そのため、3 つ目の変数のドリフト ステータスは Warning であり、黄色で示されています。2 つ目の変数については、"p" 値の信頼限界の上限がドリフトしきい値より低くなっています。そのため、3 つ目の変数のドリフト ステータスは Drift であり、オレンジ色で示されています。

    標本データを読み込みます。

    load humanactivity

    データ セットの詳細については、コマンド ラインで Description を入力してください。

    最初の 15 個の変数について、最初の 250 個の観測値をベースライン データとして割り当て、次の 250 個をターゲット データとして割り当てます。

    baseline = feat(1:250,1:15);
    target = feat(251:500,1:15);

    すべての変数についてドリフトを検定します。

    DDiagnostics = detectdrift(baseline,target)
    DDiagnostics = 
      DriftDiagnostics
    
                  VariableNames: ["x1"    "x2"    "x3"    "x4"    "x5"    "x6"    "x7"    "x8"    "x9"    "x10"    "x11"    "x12"    "x13"    "x14"    "x15"]
           CategoricalVariables: []
                    DriftStatus: ["Drift"    "Drift"    "Drift"    "Drift"    "Drift"    "Drift"    "Drift"    "Stable"    "Stable"    "Drift"    "Stable"    "Stable"    "Drift"    "Stable"    "Warning"]
                        PValues: [1.0000e-03 1.0000e-03 1.0000e-03 1.0000e-03 1.0000e-03 1.0000e-03 1.0000e-03 0.8630 0.7260 1.0000e-03 0.4960 0.2490 1.0000e-03 0.5740 0.0940]
            ConfidenceIntervals: [2×15 double]
        MultipleTestDriftStatus: "Drift"
                 DriftThreshold: 0.0500
               WarningThreshold: 0.1000
    
    
      Properties, Methods
    
    

    10 番目から 15 番目までの変数について、"p" 値の 95% 信頼区間を表示します。

    DDiagnostics.ConfidenceIntervals(:,10:15)
    ans = 2×6
    
        0.0000    0.4646    0.2225    0.0000    0.5427    0.0766
        0.0056    0.5275    0.2770    0.0056    0.6049    0.1138
    
    

    10 番目から 15 番目までの変数のドリフト ステータスをプロットします。

    plotDriftStatus(DDiagnostics,Variables=(10:15))

    標本データを読み込みます。

    load humanactivity

    データ セットの詳細については、コマンド ラインで Description を入力してください。

    最初の 15 個の変数について、最初の 250 個の観測値をベースライン データとして割り当て、次の 250 個をターゲット データとして割り当てます。

    baseline = feat(1:250,1:15);
    target = feat(251:500,1:15);

    すべての変数についてドリフトを検定します。

    DDiagnostics = detectdrift(baseline,target);

    すべての変数のドリフト ステータスをプロットし、ErrorBar オブジェクトと ConstantLine オブジェクトを返します。

    [EB,CL] = plotDriftStatus(DDiagnostics)

    EB = 
      3×1 ErrorBar array:
    
      ErrorBar    (Stable)
      ErrorBar    (Warning)
      ErrorBar    (Drift)
    
    
    CL = 
      2×1 ConstantLine array:
    
      ConstantLine
      ConstantLine
    
    

    EBErrorBar オブジェクトの配列、CLConstantLine オブジェクトの配列です。これらのオブジェクトのプロパティにアクセスしてプロットの外観を変更できます。ステータス Stable の誤差範囲およびマーカーの色を緑に変更します。ドリフトしきい値のラインとステータス Drift の誤差範囲およびマーカーの色をマゼンタに変更します。

    EB(1).Color = [0 1 0];
    EB(1).MarkerFaceColor = [0 1 0];
    EB(1).MarkerEdgeColor = [0 1 0];
    EB(3).Color = [1 0 1];
    EB(3).MarkerFaceColor = [1 0 1];
    EB(3).MarkerEdgeColor = [1 0 1];
    CL(2).Color = [1 0 1];

    WorkspaceEB または CL をダブルクリックして Property Inspector を開き、それを使用してプロパティにアクセスして変更することもできます。

    入力引数

    すべて折りたたむ

    ドリフト検出用の並べ替え検定の診断。detectdrift から返される DriftDiagnostics オブジェクトとして指定します。

    ドリフト ステータスをプロットする変数のリスト。string 配列、文字ベクトルの cell 配列、または整数インデックスのリストとして指定します。

    例: Variables=["x1","x3"]

    例: Variables=(1,3)

    データ型: single | double | char | string

    plotDriftStatus でプロットする座標軸。Axes オブジェクトまたは UIAxes オブジェクトとして指定します。ax を指定しない場合、plotDriftStatus は、現在の座標軸を使用してプロットを作成します。axes オブジェクトを作成する方法の詳細については、axesuiaxes を参照してください。

    出力引数

    すべて折りたたむ

    プロット内の推定 p 値の信頼区間を示す誤差範囲。3 行 1 列の ErrorBar オブジェクトの配列として返されます。EB は誤差範囲のプロパティを調べたり調整したりするために使用します。ErrorBar オブジェクトのプロパティの詳細については、ErrorBar のプロパティ を参照してください。

    プロット内のドリフトしきい値と警告しきい値を示すライン。2 行 1 列の ConstantLine オブジェクトの配列として返されます。CL はラインのプロパティを調べたり調整したりするために使用します。

    バージョン履歴

    R2022a で導入