Logistic-regression-in-python-restructuring-data
Pythonでのロジスティック回帰-データの再構築
組織が調査を実施するときはいつでも、顧客から可能な限り多くの情報を収集しようとします。この情報は、後で何らかの形で組織に役立つと考えています。 現在の問題を解決するには、問題に直接関連する情報を取得する必要があります。
すべてのフィールドを表示する
ここで、便利なデータフィールドを選択する方法を見てみましょう。 コードエディターで次のステートメントを実行します。
In [6]: print(list(df.columns))
次の出力が表示されます-
['age', 'job', 'marital', 'education', 'default', 'housing', 'loan',
'contact', 'month', 'day_of_week', 'duration', 'campaign', 'pdays',
'previous', 'poutcome', 'emp_var_rate', 'cons_price_idx', 'cons_conf_idx',
'euribor3m', 'nr_employed', 'y']
出力には、データベース内のすべての列の名前が表示されます。 最後の列「y」は、この顧客が銀行に定期預金を持っているかどうかを示すブール値です。 このフィールドの値は、「y」または「n」のいずれかです。 データの一部としてダウンロードされたbanks-name.txtファイルの各列の説明と目的を読むことができます。
不要なフィールドを排除する
列名を調べると、一部のフィールドが目前の問題にとって重要ではないことがわかります。 たとえば、 month、day_of_week 、campaignなどのフィールド。 役に立たない これらのフィールドをデータベースから削除します。 列をドロップするには、以下に示すようにドロップコマンドを使用します-
In [8]: #drop columns which are not needed.
df.drop(df.columns[[axis = 1, inplace = True)
このコマンドは、列番号0、3、7、8などをドロップすることを示しています。 インデックスが適切に選択されていることを確認するには、次のステートメントを使用します-
In [7]: df.columns[9]
Out[7]: 'day_of_week'
これは、指定されたインデックスの列名を出力します。
不要な列を削除した後、headステートメントでデータを調べます。 画面出力はここに示されています-
In [9]: df.head()
Out[9]:
job marital default housing loan poutcome y
0 blue-collar married unknown yes no nonexistent 0
1 technician married no no no nonexistent 0
2 management single no yes no success 1
3 services married no no no nonexistent 0
4 retired married no yes no success 1
現在、データの分析と予測に重要であると感じるフィールドのみがあります。 *データサイエンティスト*の重要性は、このステップで明らかになります。 データサイエンティストは、モデル構築に適切な列を選択する必要があります。
たとえば、 job のタイプは、一見しただけではデータベースに含めるように全員を納得させることはできませんが、非常に有用なフィールドになります。 すべてのタイプの顧客がTDを開くわけではありません。 低所得者はTDを開かないかもしれませんが、高所得者は通常、TDに余分なお金を駐車します。 したがって、このシナリオでは、ジョブのタイプが非常に重要になります。 同様に、分析に関連すると思われる列を慎重に選択します。
次の章では、モデルを構築するためのデータを準備します。