カテゴリカルデータをダミーセットに変換する

タルン

私はこのようなデータを持っています:-

|--------|---------|
| Col1   | Col2    |
|--------|---------|
| X      | a,b,c   |
|--------|---------|
| Y      | a,b     |
|--------|---------|
| X      | b,d     |
|--------|---------|

これらのカテゴリデータをダミー変数に変換したいと思います。私のデータは大きいので、get_dummies()パンダから使用ている場合はメモリエラーが発生します。私はこのような結果が欲しいです:-

|------|------|------|------|------|------|
|Col_X |Col_Y |Col2_a|Col2_b|Col2_c|Col2_d|
|------|------|------|------|------|------|
|  1   |  0   |  1   |  1   |  1   |  0   |
|------|------|------|------|------|------|
|  0   | 1    |  1   |  1   |  0   |   0  |
|------|------|------|------|------|------|
|  1   | 0    |  0   |  1   |  0   |   1  |
|------|------|------|------|------|------|

これを使用してCol2を変換しようとしましたが、データが大きく、col2にも多くの変動があるため、MemoryErrorが発生します。

そう、

1)複数のカテゴリ列をダミー変数に変換するにはどうすればよいですか?

2)pandas get_dummy()がメモリエラーを出しているので、どうすればそれを処理できますか?

タルン

私も自分の解決策を示したいと思います。そして、@ James-dellingerの回答に感謝します。これが私のアプローチです

df = pd.DataFrame({'Col1': ['X', 'Y', 'X'],
               'Col2': ['a,b,c', 'a,b', 'b,d']})
df

  Col1  Col2
0   X   a,b,c
1   Y   a,b
2   X   b,d

最初にCol2値を分割し、それを列値に変換します。

df= pd.DataFrame(df['Col2'].str.split(',',3).tolist(),columns = ['Col1','Col2','Col3'])

df

   Col1 Col2 Col3
0   a   b    c
1   a   b    None
2   b   d    None

次に、プレフィックスを付けずにこのデータフレームにダミー作成を適用しました。

df=pd.get_dummies(df, prefix="")

df

    _a  _b  _b  _d  _c
0   1   0   1   0   1
1   1   0   1   0   0
2   0   1   0   1   0

これで、目的の結果を取得するために、重複するすべての列を合計できます。

df.groupby(level=0, axis=1).sum()

df

    _a  _b  _c  _d
0   1   1   1   0
1   1   1   0   0
2   0   1   0   1

Col1の場合、を使用してダミー変数を直接作成しpd.get_dummies()、それを別のデータフレームに格納できますcol1_dfを使用して両方の列を連結できますpd.concat([df,col1_df], axis=1, sort=False)

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

パネルデータセットのカテゴリ変数の変更数をカウントする

分類Dev

パンダ:複数のカテゴリをダミーに変換する

分類Dev

MLBaseでカテゴリ変数をダミー/インジケータ変数に変換する方法

分類Dev

カテゴリ列を単一のダミー変数列に変換する

分類Dev

カテゴリデータのダミーを作成する

分類Dev

カテゴリデータを数値データに変換する方法は?

分類Dev

Pythonでカテゴリデータを数値データに変換する

分類Dev

Pythonでカテゴリデータを数値データに変換する

分類Dev

カテゴリIDをカテゴリタイトルに変換するLaravelアクセサ

分類Dev

データセットの行をRのカテゴリに結合する

分類Dev

連続データフレームをカテゴリカルに変換する

分類Dev

複数の機能とデータセットにすべてのカテゴリが存在しない場合のダミー変数

分類Dev

Pythonで数値データをカテゴリに変換する

分類Dev

カウントのあるパンダデータフレーム内のさまざまなアイテムの文字列をカテゴリカルカウントに変換します

分類Dev

パンダデータフレームでカテゴリデータを変換する

分類Dev

Rはカテゴリデータをダミー変数に変更します

分類Dev

カテゴリカルターゲット変数を使用した特徴選択にmRMReを使用する

分類Dev

Tidyverse:数値データをカテゴリデータに変換して、ビンの幅が不均一にプロットする

分類Dev

カテゴリカルパンダシリーズを文字列に変換する高速な方法

分類Dev

R:カテゴリ変数のトップレベルに対してのみダミー変数を取得する方法は?

分類Dev

データのサブセットに基づいて新しいカテゴリ変数を作成します

分類Dev

フラット配列をカテゴリ別にグループ化された配列に変換する

分類Dev

カテゴリ変数を「無視」するためのデータセットの集約

分類Dev

すでにデータセットにあるカテゴリ変数に基づいて新しい変数を作成する

分類Dev

ブートストラップカルーセルをASP.Netリピーターに変換する

分類Dev

カテゴリコードをカテゴリ値に変換する

分類Dev

パンダのカテゴリカル時系列データをカウントする方法

分類Dev

カートにリダイレクトするカスタムテーブルからのセッションデータを設定して使用する

分類Dev

パンダのデータフレームをkerasのカテゴリに変換します

Related 関連記事

  1. 1

    パネルデータセットのカテゴリ変数の変更数をカウントする

  2. 2

    パンダ:複数のカテゴリをダミーに変換する

  3. 3

    MLBaseでカテゴリ変数をダミー/インジケータ変数に変換する方法

  4. 4

    カテゴリ列を単一のダミー変数列に変換する

  5. 5

    カテゴリデータのダミーを作成する

  6. 6

    カテゴリデータを数値データに変換する方法は?

  7. 7

    Pythonでカテゴリデータを数値データに変換する

  8. 8

    Pythonでカテゴリデータを数値データに変換する

  9. 9

    カテゴリIDをカテゴリタイトルに変換するLaravelアクセサ

  10. 10

    データセットの行をRのカテゴリに結合する

  11. 11

    連続データフレームをカテゴリカルに変換する

  12. 12

    複数の機能とデータセットにすべてのカテゴリが存在しない場合のダミー変数

  13. 13

    Pythonで数値データをカテゴリに変換する

  14. 14

    カウントのあるパンダデータフレーム内のさまざまなアイテムの文字列をカテゴリカルカウントに変換します

  15. 15

    パンダデータフレームでカテゴリデータを変換する

  16. 16

    Rはカテゴリデータをダミー変数に変更します

  17. 17

    カテゴリカルターゲット変数を使用した特徴選択にmRMReを使用する

  18. 18

    Tidyverse:数値データをカテゴリデータに変換して、ビンの幅が不均一にプロットする

  19. 19

    カテゴリカルパンダシリーズを文字列に変換する高速な方法

  20. 20

    R:カテゴリ変数のトップレベルに対してのみダミー変数を取得する方法は?

  21. 21

    データのサブセットに基づいて新しいカテゴリ変数を作成します

  22. 22

    フラット配列をカテゴリ別にグループ化された配列に変換する

  23. 23

    カテゴリ変数を「無視」するためのデータセットの集約

  24. 24

    すでにデータセットにあるカテゴリ変数に基づいて新しい変数を作成する

  25. 25

    ブートストラップカルーセルをASP.Netリピーターに変換する

  26. 26

    カテゴリコードをカテゴリ値に変換する

  27. 27

    パンダのカテゴリカル時系列データをカウントする方法

  28. 28

    カートにリダイレクトするカスタムテーブルからのセッションデータを設定して使用する

  29. 29

    パンダのデータフレームをkerasのカテゴリに変換します

ホットタグ

アーカイブ