問題タブ [one-hot-encoding]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - sklearnでカテゴリ機能をエンコードする方法は?
41 個の特徴 [0 から 40 列] を持つデータセットがあり、そのうち 7 つはカテゴリです。このカテゴリ セットは、次の 2 つのサブセットに分割されます。
- 文字列型のサブセット (列機能 1、2、3)
- バイナリ形式 0 または 1 の int 型のサブセット (列機能 6、11、20、21)
さらに、列機能 1、2、および 3 (文字列型) には、それぞれカーディナリティ 3、66、および 11 があります。このコンテキストでは、サポート ベクター マシン アルゴリズムを使用するようにエンコードする必要があります。これは私が持っているコードです:
[上で公開した理由により]どちらを使用するのが良いかはわかりませんが、ほとんどの場合、[コードの観点から]どちらの方法で、私が持っているマトリックスでそれらを使用DictVectorizer()
します。または、文字列型のサブセットの各カーディナリティに番号を割り当てるだけですか (カーディナリティが高く、機能空間が指数関数的に増加するため)。OneHotEncoder()
X
編集 int 型のサブセットに関しては、列の機能をそのままにしておくのが最善の選択だと思います (エンコーダーに渡さないでください)。カーディナリティの高い文字列型のサブセットでも問題は解決しません。
python - 数値配列をスパースに変換中にエラーが発生しました
私は巨大なデータセットに取り組んでおり、数値配列をスパースに変換する際に問題があります。
TypeError Traceback (most recent call last) in () 1 from scipy import sparse # スパース配列を作成するにはこれが必要 ----> 2 scalingDF_sparse = sparse.csr_matrix(scalingDF)
/Users/nikhil_maladkar/anaconda/lib/python2.7/site-packages/scipy/sparse/compressed.pyc in init (self、arg1、shape、dtype、copy) 67 self.format) 68 from .coo import coo_matrix -- -> 69 self._set_self(self. class (coo_matrix(arg1, dtype=dtype))) 70 71 # 指定された行列の次元があれば読み取ります
/Users/nikhil_maladkar/anaconda/lib/python2.7/site-packages/scipy/sparse/compressed.pyc in init (self、arg1、shape、dtype、copy) 29 arg1 = arg1.copy() 30 その他: -- -> 31 arg1 = arg1.asformat(self.format) 32 self._set_self(arg1) 33
/Users/nikhil_maladkar/anaconda/lib/python2.7/site-packages/scipy/sparse/base.pyc in asformat(self, format) 218 return self 219 else: --> 220 return getattr(self,'to' +フォーマット)() 221 222 ############################################## ########################
/Users/nikhil_maladkar/anaconda/lib/python2.7/site-packages/scipy/sparse/coo.pyc in tocsr(self) 328 indptr = np.empty(M + 1, dtype=idx_dtype) 329 インデックス = np.empty (self.nnz, dtype=idx_dtype) --> 330 データ = np.empty(self.nnz, dtype=upcast(self.dtype)) 331 332 coo_tocsr(M, N, self.nnz,
/Users/nikhil_maladkar/anaconda/lib/python2.7/site-packages/scipy/sparse/sputils.pyc in upcast(*args) 55 return t 56 ---> 57 raise TypeError('no supported conversion for types: % r' % (args,)) 58 59
TypeError: タイプの変換がサポートされていません: (dtype('O'),)
r - R のダミーを使用したワン ホット エンコーディング
私がほとんど説明できない特定のことについてあなたの助けが必要です. 次のコード
私に与えている
今想像してみてください、私は持っています
誰かが入手方法を説明してくれませんか?
よろしく、
python - ワンホット エンコーディング後の機能名の取得
最近、ワンホット エンコーディングで変換したデータセットを使用して、なげなわロジスティック回帰をトレーニングしました。非ゼロ係数のリストを取得しようとしています。sklearn を使用して係数のリストを取得できますが、1 回のホット エンコーディング後にそれらをデータにマップする方法がわかりません。
データセットの小さな抜粋 (1 つ前のホット エンコーディングは以下にあります)
そして私のワンホットエンコーディングコード:
python - Python: 巨大なデータのワンホット エンコーディング
文字列ラベルをワンホット エンコーディングにエンコードしようとすると、メモリの問題が発生し続けます。約 500 万行と約 10000 の異なるラベルがあります。次のことを試しましたが、メモリエラーが発生し続けます:
私も次のようなことを試しました:
まだメモリエラーが発生しています。ヒントはありますか?ここでスタックに同じことを尋ねる人もいますが、答えは役に立たないようです。
python - バイナリ ラベルの nx1 配列からワンホット ベクトルを生成する
私はこのような配列を持っています:
nx2 のワンホット エンコーダ ベクトルを作成したい
これを行う簡単な方法はありますか?OneHotEncoder と LabelEncoder が機能していないようです。
python - ワンホット エンコーディング
次のような csv ファイルがあります。
ファイルを開き、次のように Pandas データ フレームに保存しました。
各レコードのカテゴリ フィールドには、カテゴリのリストが含まれています。これは文字列であり、各カテゴリは次のように一重引用符で囲まれています。
これをワンホットエンコーディングで機械学習に使いたい。scikit-learn の sklearn.preprocessing パッケージを使用してこれを実装できることは理解していますが、これを行う方法がわかりません。
注: 考えられるすべてのカテゴリのリストはありません。
python - ワン ホット エンコーディング - 1 次元配列に格納されたデータ
次のように、データセットのカテゴリ機能を格納するために使用している 1 次元配列があります (各データ インスタンスは多くのカテゴリに属し、カテゴリはコンマで区切られています)。
配列の各要素は、データ インスタンスが属するカテゴリを表します。ワンホット エンコーディングを使用する必要があるため、これらを機能として使用してアルゴリズムをトレーニングできます。これは scrikit-learn を使用して実現できることは理解していますが、実装方法がわかりません。(最大 150 の可能なカテゴリと約 1,000 のデータ インスタンスがあります。)