我有一个嵌套字典,子字典使用列表:
nested_dict = {'string1': {69: [1231,232],67:[682,12],65: [1,1]},`string2` :{28672: [82,23],22736:[82,93,1102,102],19423: [64,23]},... }
列表中至少有两个元素用于子词典,但可能会有更多.
我想将这个字典“展开”成一个pandas DataFrame,第一个字典键有一列(例如’string1′,’string2′,..),一个列用于子目录键,一列用于第一个字典键列表中的项目,下一个项目的一列,依此类推.
这是输出应该是什么样子:
col1 col2 col3 col4 col5 col6
string1 69 1231 232
string1 67 682 12
string1 65 1 1
string2 28672 82 23
string2 22736 82 93 1102 102
string2 19423 64 23
当然,我尝试使用pd.DataFrame.from_dict:
new_df = pd.DataFrame.from_dict({(i,j): nested_dict[i][j]
for i in nested_dict.keys()
for j in nested_dict[i].keys()
...
现在我被卡住了.并且存在许多问题:
>我如何解析字符串(即nested_dict [i] .values()),使每个元素都是一个新的pandas DataFrame列?
>以上实际上不会为每个字段创建一列
>以上内容不会填充带有元素的列,例如: string1应该位于子目录键值对的每一行中. (对于col5和col6,我可以用零填充NA)
>我不确定如何正确命名这些列.