2017-07-25 12 views
0

私のデータフレームには、idごとに複数の 'id_twos'を持つことができる 'id_one'があります。各id_twoには、他の列に格納されているいくつかの記述的特性もあります。 データセットの例を以下に示します。グループ内の複数の列から辞書を作成する(pandas)

d = {'id_one' : pd.Series([123, 123, 123]), 
    'id_two' : pd.Series([456, 567, 678]), 
    'descriptor' : pd.Series(['blue','yellow', 'green'])} 

df = pd.DataFrame(d) 

は私がして、私は店のid_one '「COL」と私は「id_twoのすべての値を格納する「コルB」の「id_one」ごとに1行の形で私のデータフレームを取得する必要があります'と辞書値として保存された対応する記述子とを含む。

ご協力いただきありがとうございます、ありがとうございます。

答えて

1

これはあなたの探しているものですか?

df.groupby('id_one').apply(lambda x: dict(zip(x['id_two'], x['descriptor']))).reset_index().rename(columns={"id_one":"col a", 0:"col b"}) 
# col a           col b 
# 0 123 {456: u'blue', 678: u'green', 567: u'yellow'} 
関連する問題