感谢SO,我使用以下DataFrame创建了一个带有正确键的所需嵌套字典:
df = pd.DataFrame({'name': ['jake','martin','justin'], 'date': ['6/7/2021','1/1/2031','1/4/2011'], 'country':['Russia','USA','Australia'],
'city 1':['Moscow','New York','Sidney'], 'city 2':['St. Petersburg','Los Angeles','Brisbane'], 'kids':[5,3,1], 'Feature 1':['some','feature','here'], 'Feature 2':['some2','feature2','here2']})
看起来像这样:
name country city 1 city2 kids Feature1 Feature2 date
0 jake Russia Moscow St. Petersburg 5 some some2 1/1/2031
1 martin USA New York Los Angeles 3 feature feature2 4/4/2021
2 justin Australia Sidney Brisbane 1 here here2 2/3/2015
最终目标:
创建一个嵌套字典,如下所示:
{jake: {'name':'jake', 'Russia': {'city1':'Moscow', 'city2': 'St. Petersburg'}, '5': {'Feature1':'some', 'Feature1':'some2'}, 'date': '1/1/2031'}, martin: {}}
我的目标是在一个嵌套字典中创建嵌套字典,并尝试了不同的方法,包括使用 defaultdict
,但很遗憾没有成功。
以下是我用于创建第一层嵌套的代码:
{jake: {'name':'jake', 'country':'Russia', 'city1':'Moscow', ...}}
df.set_index('name', inplace=True, drop=False)
d = df.transpose().to_dict()
我也尝试过创建一个单独的字典,然后将其附加,但没有成功。非常感谢任何帮助。