按列中的子数组分组数据并创建具有可变深度的子集。
创始人
2024-11-03 06:30:21
0

假设我们有以下示例数据:

列1 列2
A 1
B 2
C 3
A 4
C 5
B 6

我们想按列1中的子数组分组,创建一个变量深度的子集,最终输出结果如下:

{ "A": { "1": {}, "4": {} }, "B": { "2": {}, "6": {} }, "C": { "3": {}, "5": {} } }

这里是一个示例代码,用于解决此问题:

data = [
  {'col1': 'A', 'col2': 1},
  {'col1': 'B', 'col2': 2},
  {'col1': 'C', 'col2': 3},
  {'col1': 'A', 'col2': 4},
  {'col1': 'C', 'col2': 5},
  {'col1': 'B', 'col2': 6},
]

result = {}

for row in data:
    current_level = result
    for subcolumn in row['col1']:
        current_level = current_level.setdefault(subcolumn, {})
    current_level[row['col2']] = {}

print(json.dumps(result, indent=2))

该代码使用字典实现了一个多层嵌套的数据结构。它遍历数据中的每一行,将列1中的每个字符作为一个层级,在字典中创建一个嵌套结构。最后,在最底层的嵌套结构中添加一个空字典,作为最终子集的末尾。最终结果通过json.dumps()函数以良好的格式输出。

注意:如果想要按列1的顺序排序,请先对数据进行排序。

相关内容

热门资讯

教你透视!wepoker怎么下... 教你透视!wepoker怎么下载游戏,微乐自建房脚本最新版本更新内容,策略教程(有挂秘籍)-哔哩哔哩...
开挂透视!hhpkoer辅助器... 开挂透视!hhpkoer辅助器视频,微乐广西麻辣辅助器,方式教程(真是有挂)-哔哩哔哩1)hhpko...
开挂透视!wepoker私人局... 开挂透视!wepoker私人局俱乐部怎么进,微信小程序微乐辅助器ios,秘籍教程(有挂方式)-哔哩哔...
科普透视!pokemmo修改器... 科普透视!pokemmo修改器手机版,微乐小程序自建房辅助,攻略教程(的确有挂)-哔哩哔哩科普透视!...
解谜透视!hhpoker透视工... 解谜透视!hhpoker透视工具,微信小程序微乐辅助器教程,秘籍教程(有挂解密)-哔哩哔哩所有人都在...
解迷透视!wepoker轻量版... 解迷透视!wepoker轻量版透视方法,小程序微乐辅助器免费版,指引教程(有挂功能)-哔哩哔哩wep...
普及透视!wepoker怎么拿... 普及透视!wepoker怎么拿到好牌,小程序微乐陕西挖坑辅助器,阶段教程(有挂功能)-哔哩哔哩暗藏猫...
必备透视!智星德州插件2024... 必备透视!智星德州插件2024最新版,微乐小程序自建房辅助下载,方式教程(有挂猫腻)-哔哩哔哩1、每...
了解透视!wepoker插件程... 了解透视!wepoker插件程序激活码,微乐麻将自建房app,教材教程(有人有挂)-哔哩哔哩1、很好...
有挂透视!sohoo poke... 有挂透视!sohoo poker辅助器,微乐小程游戏破解器下载,积累教程(证实有挂)-哔哩哔哩所有人...