標準偏差に基づく列のセルの条件付きカラーリング特定のセルの値が1シグマ以内、> 1シグマ以内、<2シグマ内、> 2シグマ内、<3シグマ内、> 3シグマ内、またはシグマが標準であるかどうかに基づいて、列のセルに色を付ける必要がありますまさに列の偏差。
再:標準偏差に基づいて列のセルの条件付きカラーリングこのスクリプトは完全ではないか、効率的ではありませんが、アイデアを提供します。
Names Default to Here( 1 );
dt = Open( "$SAMPLE_DATA/Fitness.jmp" );
mu = Col Mean( :weight );
sd = Col Std Dev( :weight );
lo = mu - 3*sd;
hi = mu + 3*sd;
rows = dt << Get Rows Where( lo <= :weight <= hi );
:weight << Color Cells( "Red", rows );
lo = mu - 2*sd;
hi = mu + 2*sd;
rows = dt << Get Rows Where( lo <= :weight <= hi );
:weight << Color Cells( "Yellow", rows );
lo = mu - sd;
hi = mu + sd;
rows = dt << Get Rows Where( lo <= :weight <= hi );
:weight << Color Cells( "Green", rows );
多数の行がある場合、効率のためにブールテストを改善できます。
再:標準偏差に基づいて列のセルの条件付きカラーリングありがとうございました!できます。再:標準偏差に基づいて列のセルの条件付きカラーリングこんにちは、マーク、この投稿からもう1つ関連する質問があります。私のデータフレームには、10を超える列があり、指定したコードを編集して貼り付けるのは苦痛です。自分でforループを作成しようとしましたが、機能しません。これに関するアドバイスをお願いしますか?ありがとうございました!
col = dt <<列名の取得(文字列);
nc = nitems(col);
for(i = 2、i <= nc、i ++、
mu = Col Mean(:Name(col [i]));
sd = Col Std Dev(:Name(col [i]));
lo = mu-3 * sd;
hi = mu + 3 * sd;
rows = dt << Get Rows Where(lo <=:Name(col [i])<= hi);
:Name(col [i])<< Color Cells( "Red"、rows);
rows = dt << Get Rows Where(:Name(col [i]) hi);
:Name(col [i])<< Color Cells( "Purple"、rows);
lo = mu-2 * sd;
hi = mu + 2 * sd;
rows = dt << Get Rows Where(lo <=:Name(col [i])<= hi);
:Name(col [i])<< Color Cells( "Yellow"、rows);
lo = mu-sd;
hi = mu + sd;
rows = dt << Get Rows Where(lo <=:Name(col [i])<= hi);
:Name(col [i])<< Color Cells( "Green"、rows);
);