在pandas中使用index来绘制数据

pau*_*hen 29 python pandas

我有一个pandas-Dataframe并用于resample()计算均值(例如每日或每月均值).这是一个小例子.

import pandas as pd  
import numpy as np

dates = pd.date_range('1/1/2000', periods=100)
df = pd.DataFrame(np.random.randn(100, 1), index=dates, columns=['A'])

monthly_mean = df.resample('M', how='mean')
Run Code Online (Sandbox Code Playgroud)

我现在如何绘制monthly_mean?如何设置使用我新创建的DataFrame的索引monthly_mean作为x轴?提前致谢.

Mar*_*ius 42

您可以使用reset_index将索引转换回列:

monthly_mean.reset_index().plot(x='index', y='A')
Run Code Online (Sandbox Code Playgroud)

  • 谢谢.对于上面给出的示例,它现在可以正常工作.你能解释一下"将索引变回一列"的意思吗?我现在可以绘制平均数据,但我仍然不知道如何正确地访问索引以将其用于将来处理平均数据.我还需要能够通过使用两个帧的索引"日期"来比较不同数据帧的平均值.我怎么做? (2认同)

小智 37

试试这个,

monthly_mean.plot(y='A', use_index=True)
Run Code Online (Sandbox Code Playgroud)

  • 对我来说,简单地指定`y`工作:`monthly_mean.plot(y ='A')`. (5认同)

Nic*_*aro 9

monthly_mean.plot(y='A')
Run Code Online (Sandbox Code Playgroud)

默认使用索引作为 x 轴。


小智 6

也,

monthly_mean.plot(x=df.index, y='A')