Python 2.7の使用。問題はフィット法に関するものです。数値型の機能(例えば、Male
,Female
などの文字列型の機能)が必要な場合は、機能(数値はX
)を使用するか、数値機能に変換することをおすすめします?そして私は複数値文字列型の機能を持っている場合にもscikit-learnのロジスティック回帰フィーチャ値の正規化
に関して、 林(例えば機能ジオがSan Francisco
の任意の値、San Jose
、Mountain View
、などすることができる)
Python 2.7の使用。問題はフィット法に関するものです。数値型の機能(例えば、Male
,Female
などの文字列型の機能)が必要な場合は、機能(数値はX
)を使用するか、数値機能に変換することをおすすめします?そして私は複数値文字列型の機能を持っている場合にもscikit-learnのロジスティック回帰フィーチャ値の正規化
に関して、 林(例えば機能ジオがSan Francisco
の任意の値、San Jose
、Mountain View
、などすることができる)
あなたはカテゴリエンコードする必要がありますあなたがsklearn
を使用したい場合は、それらを数値に変換します。このリンゴはすべてsklearn
estimators(LogisticRegression
を含む)にあり、使用しているPythonのバージョンは関係ありません。
見て4.3.4。詳細な情報は、のhttp://scikit-learn.org/stable/modules/preprocessing.html#encoding-categorical-featuresのエンコードカテゴリ機能を参照してください。
ちょうどMhFarahaniさんの答えにビットを追加する: はい、これらのラベルを数値(通常0または1)に変換する必要があります。ジェンダーのようなものについては、男性は0、女性は1のいずれかの行が必要です。逆もまた同様です。地理的な場所のようなものは、もう少し複雑になります。合理的な数の回答がある場合は、pandasのget_dummies関数を使用して(ドキュメントhereをチェックして)、データフレームに各可能な場所を表す行を自動的に設定してください。それらの行のうちの1つを削除して、その場所を「デフォルト」にすることができます。
男性/女性を0/1または-1/1にエンコードすると、予測結果が変わるかどうかわかりません。 –
0/1か1/0を意味すると思いますか? (つまり、「性別」という列があり、値は1または0のいずれかになります.1は女性、0は男性OR、0は女性、1は男性です)。選択は任意ですが、回帰の結果を見るときは心に留めておく必要があります。例えば、性別の係数が正であり、1が男性を意味する場合、男性であることは従属変数に正の効果を有することを意味する。 1が女性を意味する場合、女性はその肯定的な効果を持っています! –
こんにちはバラク、私は男性を1、女性を0とエンコードしたり、2つのメカニズムが予測結果に影響を与えるかどうかにかかわらず、男性を-1、女性を1とエンコードすることができますか? –
ありがとうMhFarahaniさん、男性/女性を0/1または-1/1にエンコードすると予測結果が変わるかどうか不明ですか? –
また、エンコーディングに関するいくつかの例を読みましたが、たとえば、このリンク(http://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.OneHotEncoder.html#sklearn.preprocessing)から混乱しています。これらの値は、4つのサンプルを表す '[0、0、3]、[1,1,0]、[0,2,1]、[1,0,2]特徴?もしそうなら、その文書がなぜ「3つの特徴と2つのサンプル」と言っているのか混乱していますか? –
0/1の男性/女性は合理的な選択です。しかし1/1は男性と女性の間に違いがないことを示すので、あなたに間違った結果を与えるでしょう。あなたの機能を 'sklearn.preprocessing.LabelEncoder'に渡すと、それはあなたのカテゴリー的な特徴を自動的にエンコードします。 – MhFarahani