Excelを使ったダミー変数の作り方

プラントデータ活用/前処理と可視化前処理と可視化コースの2本目(全5本)公開更新広告

製造部門では品管検査の結果、大きく分けて合格か不合格の判定がなされます。

合格か不合格のように2つに決まる値はダミー変数に変換することでデータ解析に活用します。

ダミー変数は元データを1か0かで表して解析できるようにしたデータのことです。

例えば合格を0、不合格を1とすることで文字データを数値データに変換できます。

今回はダミー変数の作り方について解説します。

この記事の内容
  1. ダミー変数の作り方
  2. 3つ以上種類がある場合
  3. Excelを使った作り方
  4. 連続数値をダミー変数にする
  5. 関連記事

ダミー変数の作り方

まずはダミー変数の基本事項を解説します。

ダミー変数の考え方は元データを1か0かに変換して表を作り直すことです。

以下の品管検査記録があるとします。

ロット 合否
A-101 合格
A-102 不合格
A-103 合格
A-104 合格
A-105 不合格
A-106 合格
ロットごとの検査結果データ

まずは「合格ですか?」「不合格ですか?」という質問にそれぞれYESなら1、NOなら0を入れてみます。

そのために”合格列”と”不合格列”を用意します。

これがダミー変数の基本的な考え方です。

ロット 合否 合格 不合格
A-101 合格 1 0
A-102 不合格 0 1
A-103 合格 1 0
A-104 合格 1 0
A-105 不合格 0 1
A-106 合格 1 0
合否データを1と0で表現する

合格列を見てみると、ここでは”合格”が1で”それ以外”が0を意味します。

0の”それ以外”は消去法で”不合格”であると判断できます。

つまり合格か不合格のような2つの判定結果は1列にまとめることができます。

正確に言えば、多重共線性(別サイト)という解析の精度を低下させる原因になりうるため必ず片方を削除しなければなりません。

そのため以下の表でも同じ意味になります。

ロット 合否 不合格
A-101 合格 0
A-102 不合格 1
A-103 合格 0
A-104 合格 0
A-105 不合格 1
A-106 合格 0
不合格データを1と0で表現する

データ合否の行は数値化されておらず不合格の列と同じ意味を持つため削除します。

ロット 不合格
A-101 0
A-102 1
A-103 0
A-104 0
A-105 1
A-106 0
ロットごとの合否データ(完成版)

これで、ある製品のロットごとの合否結果がダミー変数のおかげで数値データ化されました。

3つ以上種類がある場合

先の合否データでは2つの値でした。

3つ以上の値の場合はどうなるのでしょうか。

例えば合格・不合格に再検査の項目が追加したとして考えます。

基本的には同じ考え方

合格・不合格・再検査の3種類の値が入った検査結果があるとします。

値が3つでも考え方は変わりません。

ロット 検査結果
A-101 合格
A-102 不合格
A-103 合格
A-104 合格
A-105 再検査
A-106 合格
ロットごとの検査結果データ(再検査追加)

今回は不合格・再検査の列を追加して、それ以外は消去法で”合格”として作成してみます。

ロット 検査結果 不合格 再検査
A-101 合格 0 0
A-102 不合格 1 0
A-103 合格 0 0
A-104 合格 0 0
A-105 再検査 0 1
A-106 合格 0 0
不合格と再検査を0と1で表現する

最後に検査結果の列を削除して完成です。

ロット 不合格 再検査
A-101 0 0
A-102 1 0
A-103 0 0
A-104 0 0
A-105 0 1
A-106 0 0
ロットごとの合否、再検査データ(完成版)

ここまで見て分かる通り、項目数から1つ少ない数のダミー変数に変換するようにします。

ダミー変数にする項目に決まりはありません。

ただしデータを回帰分析に応用する場合は係数を求められるため、どのダミー変数がどの程度影響があるか知ることができます。

1と0のみで表現すること

例えば合格を0、不合格を1、再検査を2とした場合を考えてみます。

それでも数値で表して尚且つ分類をすることはできます。

しかしその場合、不合格は再検査の2倍という意味を持つようになります。

1と0以外で表現すると何倍になるのか計算できてしまいデータの意味に不都合が生じてしまいます。

ただしこれはラベルエンコーディングと呼ばれる手法で、機械学習によっては有効に機能することもあります。

Excelを使った作り方

Excelを使ってダミー変数に変換する場合、1個ずつ入力しても良いですが楽になる方法があります。

合格・不合格に関するダミー変数を作成してみます。

置換

Excelには文字を置換する機能があります。

置換したい範囲(以下例ではG3~G8)を選択してCtrl+Hを押すと「検索と置換」のウィンドウが出てきます。

置換を用いたダミー変数の作成1

「検索する文字列」を不合格、「置換後の文字列」を1に設定します。

「すべてを置換」を押すと不合格が1に置換されました。

置換を用いたダミー変数の作成2

同様に”合格”についても0で置換するようにすればダミー変数へ変換が可能です。

置換を用いたダミー変数の作成3

このやり方は関数を入力しなくて良い反面、1個ずつ置換しなければいけなく手間がかかってしまいます。

2値であれば置換の方が分かりやすく早く処理できます。

IF関数

IF関数を使用した条件式で不合格の場合は1、それ以外は0とすることでダミー変数に変換できます。

IF関数を用いたダミー変数の作成

IF関数を使用した場合のメリットはダミー変数の数が増えても低労力で対応できる点です。

絶対参照(別サイト)をうまく使うことで1つの関数を入力するだけで関係する箇所はすべて変換できます。

IF関数を用いたダミー変数の作成(3値の例)

連続数値をダミー変数にする

これまでは合格や不合格のような文字データをダミー変数に変換していました。

実は数値データもダミー変数に変換する方法があります。

例えば製造温度が50℃を超えた場合に不合格になりそうだと想定できている場合があるとします。

その際は温度データのうち50℃以上の温度を記録した場合に1とするダミー変数を作ることもできます。

ロット 温度 ℃ ダミー変数(50℃以上)
A-101 35 0
A-102 59 1
A-103 48 0
A-104 51 1
A-105 60 1
A-106 37 0
50℃以上の温度データをダミー変数化

関連記事

始めが肝心!データ分析の進め方

データ分析の基礎

Excelで作れるグラフの種類と使い分け

Excelでも作れるグラフ

尺度とは?比例尺度・間隔尺度・順序尺度・名義尺度の4種類の違いと例

変数や尺度の意味

前処理と可視化コースの前後の記事

関連する書籍

執筆・講演・監修のご依頼は、ご相談のページで受け付けています。