bugfix> python > 投稿

簡単なデータセットがあります。

id,question,category,tags,day,quarter,group_id
1,What is your name,Introduction,Introduction,1,3,0
2,What is your name,Introduction,"Introduction, work",1,3,1

ご覧の場合、 tags で列には、コンマで区切られた複数の入力があります。を使用してワンホットエンコードを試みた場合パンダ  get_dummies 関数私はそれを単一の列として取得します。しかし、各タグの列を作成したかったのです。どうすればできますか?

回答 2 件
  • str.get_dummies が必要だと思う :

    df1 = df['tags'].str.get_dummies(', ')
    print (df1)
       Introduction  work
    0             1     0
    1             1     1
    
    

  • あなたは pivottable を使用する必要があります  パンダのデータフレームメソッドの。 次のコードが役に立つかもしれません

    pivot_table(df, values='D', index=['id','question','category','day','quarter','group_id'],columns=['tags'])
    
    

あなたの答え