У меня следующая структура данных:
import pandas as pd
import json
df = pd.DataFrame( {'g1' : ['ABC', 'ABC', 'XYZ', 'XYZ'], 'g2' : ['DEF', 'GHI', 'RST', 'UVW']})
print df
>> g1 g2
0 ABC DEF
1 ABC GHI
2 XYZ RST
3 XYZ UVW
Я пытаюсь записать файлы JSON со следующей структурой
$ cat ABC.json
> {
"DEF" : true,
"GHI" : true
}
и
$ cat XYZ.json
> {
"RST" : true,
"UVW" : true
}
До сих пор я был в состоянии создать агрегацию
print df.groupby(u'g1',as_index=True)[u'g2'].aggregate(lambda x: set(x))
>> g1
ABC {GHI, DEF}
XYZ {RST, UVW}
и вывести ее в JSON
dd = json.loads(df.to_json())
, а затем записать ее в отдельные файлы
for k,v in dd.iteritems():
with open(k+'json','wb') as fp:
json.dump(v, fp)
но сопоставить список с диктатом в духе панды все еще ускользает от меня.Я опубликую свой ответ на языке Python (non-pandas) в качестве ссылки