使用Python数据科学手册(第139页图3.6重新取样和转换来自谷歌的任何人的频率),我试图效仿如下:
%matplotlib inline
import pandas as pd
import numpy as np
from pandas_datareader import data
import matplotlib.pyplot as plt
import seaborn; seaborn.set()
goog = data.DataReader('GOOG', start='2004', end='2016',
data_source='google')
goog = goog['Close']
goog.plot(alpha=0.5, style='-')
goog.resample('BA').mean().plot(style=':')
goog.asfreq('BA').plot(style='--');
plt.legend(['input', 'resample', 'asfreq'],
loc='upper left');
虽然示例如下所示:
为什么会这样?我很确定代码完全相同。我该如何解决这个问题?
答案 0 :(得分:1)
没有什么是错的,只是重新采样规则BA
与mean()
只返回两个点,因此是直线。
使用不同的available offset rules我无法快速重现所需的情节。您应该尝试探索并使用多天。