python - 无法在 Pandas 中创建折线图

标签 python pandas dataframe plot

使用 Pandas 进行分析的第二天,我现在正在尝试利用它的绘图功能。我在根据对按日期(以年为单位)分组的列求和后得到的数据帧创建折线图时遇到问题。 我想要的图应该显示全年订单量的增长情况,因此日期应该是 X 轴,订单应该是 Y 轴。

我的导入如下:

import pandas
import matplotlib.pyplot
import seaborn as sns

我有一个包含所有信息的主数据框,从该 df 中,我制作了另一个仅包含一列总和的数据框。

ordersYears = rawData.groupby(rawData['Date'].dt.year)['Total Records'].sum();
ordersYears.set_index('Date')['Total Records'].plot();

但是,我收到错误 AttributeError: 'Series' object has no attribute 'set_index' 如果我尝试查看 orderYears.index 我得到

Int64Index([2018, 2019], dtype='int64', name='Date')

因此,这似乎没有被正确识别为日期。仅供引用,主数据框中的日期列是日期时间,我明确地将其转换为该格式,如果“日期”不是日期时间,创建其他数据框的过程将无法工作。

对正在发生的事情有什么想法吗?

最佳答案

对于pd.series,您需要使用series.reindex()set_index() 用于pd.DataFrame。此外,您不需要选择一列(series 只有一列)。

ordersYears.reindex(<the values you want as index>).plot()

关于python - 无法在 Pandas 中创建折线图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59178927/

相关文章:

python - 列表理解条件中的 `elif`

python - 在 Python 中合并数据框时出现重复的行

python - 从两列中创建单个数据框,每列包含列表

python - 在 Python 中将包含元组列表的字典转换为 DataFrame

python - 根据给定的分布对数据帧进行采样

string - 输入不完整的strsplit成data.frame

python - 获取数据框中值的组合并实现一个函数

python - 在Python中给定一个包含该子字符串的字符串,查找该子字符串的所有索引

python - 如何找到图中两个之间没有边的随机节点?

python - web2py SQLFORM.grid 参数定义