python - 将字典转换为数据框(将重复键作为行)
问题描述
我正在尝试将以下字典:partlistzonesdef(有 50 个键)转换为数据框:假设我们有字典:
{1: [60, 127],
2: [21, 43, 61, 19],
3: [186, 154, 37],
4: [99, 68, 80, 87, 128, 98]}
如何将其转换为这样的数据框:
Index Area
0 1 60
1 1 127
2 2 21
3 2 43
4 2 61
5 2 19
6 3 186
7 3 154
8 3 37
等等?
解决方案
创建一个Series
并将列表的每个元素转换为一行,explode
然后reset_index
获得预期的结果:
df = pd.Series(d, name='Area').rename_axis('Index').explode().reset_index()
输出:
>>> df
Index Area
0 1 60
1 1 127
2 2 21
3 2 43
4 2 61
5 2 19
6 3 186
7 3 154
8 3 37
9 4 99
10 4 68
11 4 80
12 4 87
13 4 128
14 4 98
推荐阅读
- javascript - 如何在页面上提交表单后删除已删除的值
- google-analytics - 无法将 Google Search Console (GSC) 链接到 Google Analytics (GA)
- javascript - ListView 中每行的 Django Admin 操作按钮
- swift - SWIFT:如何修复单元格荧光笔并使整个集合视图滚动而不是荧光笔?
- python - 连接名称的值计数
- oracle - 在 rdf 中显示为问号的特殊字符
- c - 将近似值从双精度转移到单精度
- oracle - 修改父表中的数据时,Oracle 子表的行为如何?
- python - 如何在子类中补充父类的__repr__()以输出额外的子类特征
- python - 如何最好地应用“skimage.util.apply_parallel”来删除大型数据集中的小对象?