python - pandas - 从字典列表创建数据框时,如何将行添加为列?
问题描述
我有一个按特定顺序排列的字典列表,我可以将它们转换为数据框,但我想将 rowId 作为标识符。
这是我的代码和我卡住的地方:
priceHistory
[{'Apple': 1.27, 'Oranges': 2.92, 'Pears': 2.05},
{'Apple': 1.12, 'Oranges': 3.33, 'Pears': 1.72},
{'Apple': 1.22, 'Oranges': 4.52, 'Pears': 2.31},
{'Apple': 1.37, 'Oranges': 5.93, 'Pears': 2.81},
{'Apple': 1.5, 'Oranges': 5.77, 'Pears': 3.66},
{'Apple': 1.59, 'Oranges': 5.24, 'Pears': 3.35},
{'Apple': 1.29, 'Oranges': 4.97, 'Pears': 4.02},
{'Apple': 1.53, 'Oranges': 6.03, 'Pears': 5.22},
{'Apple': 1.86, 'Oranges': 8.4, 'Pears': 7.04},
{'Apple': 1.61, 'Oranges': 10.33, 'Pears': 5.98}]
priceHistorydf = pd.DataFrame(priceHistory)
priceHistorydf
Apple Pears Oranges
0 1.27 2.05 2.92
1 1.12 1.72 3.33
2 1.22 2.31 4.52
3 1.37 2.81 5.93
4 1.50 3.66 5.77
5 1.59 3.35 5.24
6 1.29 4.02 4.97
7 1.53 5.22 6.03
8 1.86 7.04 8.40
9 1.61 5.98 10.33
如您所见,顺序是正确的,并且有行号。但我需要将这些标识符放在单独的列中。我怎样才能做到这一点?
解决方案
检查reset_index
,则索引变为一列,可以视为 id
priceHistorydf = priceHistorydf.reset_index()
或者
priceHistorydf ['ID'] = np.arange(len(priceHistorydf ))
priceHistorydf
Out[13]:
Apple Pears Oranges ID
0 1.27 2.05 2.92 0
1 1.12 1.72 3.33 1
2 1.22 2.31 4.52 2
3 1.37 2.81 5.93 3
4 1.50 3.66 5.77 4
5 1.59 3.35 5.24 5
6 1.29 4.02 4.97 6
7 1.53 5.22 6.03 7
8 1.86 7.04 8.40 8
9 1.61 5.98 10.33 9
推荐阅读
- visual-studio-code - VS Code 侧边栏中的数据部分在哪里?
- asp.net-core - ASP.NET Core:为什么我们必须在 POST 请求期间使用 FromBodyAttribute 来处理来自 json 有效负载的参数?
- bash - CIRCLECI 回显到文件给出权限错误
- python - ValueError:标签数为 1。使用 silhouette_score 时,有效值为 2 到 n_samples - 1(含)
- python - Pandas - InvalidIndexError:重新索引仅对具有唯一值的索引对象有效
- python - 我是否为 python 安装了 pandas (Mac)
- javascript - 如何在两个链接的时间线之间拖动项目?
- .net - 保存文件时发生 System.IO.IO 异常
- php - 为什么在 PHP 中使用 Generator::throw 会在 throw 后忽略产生的值
- excel - Excel VSTO - 厘米/英寸到点的转换不准确