1と0の値を持つデータフレームに等しくない大きさと要素のリストと辞書に変換する方法

user3668129:

私が使用しています python 3.7.6

次のように私は辞書を持っています:

key   - string
value - list of strings

値(リスト)と同じサイズではありません

例えば:

 {'GP': ['col_1', 'col_2', 'col_3', 'col_4'], 
 'MIN': ['col_1', 'col_2', 'col_3', 'col_4'],
 'PTS': ['col_1', 'col_2', 'col_3', 'col_4'], 
 'FGM': ['col_1', 'col_2', 'col_4'], 
 'FGA': ['col_2'], 
 'FG%': ['col_2', 'col_3', 'col_4'],
 '3P Made': ['col_2', 'col_3'], 
 'AST': ['col_2', 'col_3'], 
 'STL': ['col_2'], 
 'BLK': ['col_2', 'col_3'],
 'TOV': ['col_3']}

私はこの辞書をに変換したいDataframeキーが行で、列がリストの値であり、コンテンツは1または0です(行はリスト値かを持っている場合は異なります):

            col_1       col_2       col_3    col_4  
 GP           1         1           1           1
 MIN          1         1           1           1 
 PTS          1         1           1           1 
 FGM          1         1           0           1 
 FGA          0         1           0           0 
 FG%          0         1           1           1
 3P Made      0         1           1           0
 AST          0         1           1           0
 STL          0         1           0           0
 BLK          0         1           1           0
 TOV          0         0           1           0

どのように私はそれを行うことができますか?

エズレル:

使用MultiLabelBinarizerd.keys()し、d.values()辞書の:

from sklearn.preprocessing import MultiLabelBinarizer

mlb = MultiLabelBinarizer()
df = pd.DataFrame(mlb.fit_transform(d.values()), index=d.keys(),columns=mlb.classes_)
print (df)
         col_1  col_2  col_3  col_4
GP           1      1      1      1
MIN          1      1      1      1
PTS          1      1      1      1
FGM          1      1      0      1
FGA          0      1      0      0
FG%          0      1      1      1
3P Made      0      1      1      0
AST          0      1      1      0
STL          0      1      0      0
BLK          0      1      1      0
TOV          0      0      1      0

パンダ唯一の解決策は、しかしでslowier SeriesSeries.str.joinおよびSeries.str.get_dummies

df = pd.Series(d).str.join('|').str.get_dummies()

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=365243&siteId=1