辞書の配列の辞書型の要素の重複を取り除きたい。
{'A':[{'a1':10,'a2':20},{'a1':10,'a2':20},{'a1':30,'a2':25}],'B':[{'a1':40,'a2':50},{'a1':30,'a2':25},{'a1':30,'a2':25},{'a1':30,'a2':25},{'a1':22,'a2':27},{'a1':22,'a2':27}],'C':[{'a1':10,'a2':20}]}
という辞書dfがある。
この辞書の配列の辞書型の要素の重複を取り除きたい。
例えば、{‘a1’:10,‘a2’:20},{‘a1’:10,‘a2’:20}は重複しているため1つにする、
{‘a1’:30,‘a2’:25},{‘a1’:30,‘a2’:25},{‘a1’:30,‘a2’:25}も重複しているため1つにするなど。
理想のアウトプットは、
{‘A’:[{‘a1’:10,‘a2’:20},{‘a1’:30,‘a2’:25}],’B’:[{‘a1’:40,‘a2’:50},{‘a1’:30,‘a2’:25},{‘a1’:22,‘a2’:27}],’C’:[{‘a1’:10,‘a2’:20}]}
のような形にすることである。
x=set(df) print(x)
とコードを書くと、
[‘A’,’B’,’C’] のようにキーだけの重複が取り除かれた。
要素は配列であるため、setメソッドでset(list)のようにして1行で書けるのか?
どのように書けば理想のアウトプットの辞書を出力できるか?
回答2件
あなたの回答
tips
プレビュー