2017-11-21 3 views
0

Python PandasでFeature Hashingを使用すると少し失われます。DataFrameの特定の列にハッシュを適用する

私は、さまざまな種類の多くの情報を持つ複数の列を持つDataFrameを持っています。データのクラスを表す1つの列があります。

例:

  col1 col2 colType 
    1  1  2  'A' 
    2  1  1  'B' 
    3  2  4  'C' 

私の目標は、機械学習アルゴリズムを適用することができるようにするために、COLTYPEためFeatureHashingを適用することです。

私はこのような何かを持つ、COLTYPE用に別のデータフレームを作成しました。そして、

    colType value 
      1   'A'  1 
      2   'B'  2 
      3   'C'  3 
      4   'D'  4 

、このクラスのデータフレームのためのハッシュ機能を適用します。しかし、私は、機械学習アルゴリズムの入力として使用するために、情報を使ってDataFrameにFeature Hashingの結果を追加する方法を理解していません。

これは私がFeatureHashingを使用する方法である:

from sklearn.feature_extraction import FeatureHasher 
    fh = FeatureHasher(n_features=10, input_type='string') 
    result = fh.fit_transform(categoriesDF) 

は、どのように私は自分のデータフレームに、このFeatureHasher結果を挿入していますか?私のアプローチはどれくらい悪いですか?私がやっていることを達成するためのより良い方法はありますか?

ありがとうございます!

答えて

0

私はこのような何か使用して、ワンホットコーディングに切り替えている:1または0

と、この関数は、すべての非カテゴリ値の列を作成します

categoriesDF = pd.get_dummies(categoriesDF) 

関連する問題