首页 > 解决方案 > 如何将 Pandas 系列转换为数据框

问题描述

我一直在我拥有的数据框上运行一些分组并将结果保存在变量中。但是,我只是注意到变量实际上被保存为系列而不是数据框。

我已经看过关于如何将系列转换为数据框的教程/文档,但它们都只显示静态数据(通过手动将每个值输入到数组中),这不是我的选择,因为我我的数据框中有超过 200 万行。

所以如果我有

TopCustomers = raw_data.groupby(raw_data['Company'])['Total Records'].sum()
Top10Customers = TopCustomers.sort_values().tail(10)

如何将 Top10Customers 转换为数据框?我需要它,因为并非所有情节都适用于系列。

语法frame = { 'Col 1': series1, 'Col 2': series2 }不起作用,因为我只有 1 个系列

标签: pythonpandasdataframeplot

解决方案


这是一个带有数据的小例子:

import pandas as pd
raw_data = pd.DataFrame({'Company':['A', 'A','B', 'B', 'C', 'C'], 'Total Records':[2,3,6,4,5,10]})
TopCustomers = raw_data.groupby(raw_data['Company'])['Total Records'].sum()

确实type(TopCustomers)是 pandas.core.series.Series 下面把它变成了一个DataFrame:

pd.DataFrame(TopCustomers)

否则.to_frame(),如上所述,效果同样好。


推荐阅读