python - 绘制 Pandas Dataframe 的直方图及其均值和标准差,得到 ValueError

标签 python pandas matplotlib dataframe

我有一个 pandas 数据框,由作为索引的日期范围和一列和 2192 行组成。我能够在直方图上绘制此数据框,但是当我尝试在直方图上包含此数据框的均值和标准差时,我在这些行处导致了 ValueError

#compute daily returns
daily_returns = stats.compute_daily_returns(df_btc)
#plotter.plot_data(daily_returns, title="Daily returns", ylabel="Daily returns")
print daily_returns.head()

daily_returns.replace(to_replace=np.inf, value=np.NaN, inplace=True)
# Plot a histogram
daily_returns.hist(bins=21)
plt.show()

# Get mean as standard deviation
mean = daily_returns.mean()
std = daily_returns.std()

print mean
print std

#the problem comes here  
plt.axvline(mean, color='w', linestyle='dashed', linewidth=2)

enter image description here

错误出在我在 github 上的存储库的 dataextract.py 中

我已经完成了这个link也是,但没有解决我的问题

最佳答案

问题是您试图在 axvline 中使用 1 项系列而不是 float 。

pandas.DataFrame.mean() 是一个 pandas.Series,而不是一个 float 。

在这种情况下,您可以通过获取存储在 Series

中的值来修复它
plt.axvline(mean[0], color='w', linestyle='dashed', linewidth=2)

关于python - 绘制 Pandas Dataframe 的直方图及其均值和标准差,得到 ValueError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36895865/

相关文章:

matplotlib:ValueError:无效的PNG header

python - SampleRNN - Pytorch 实现初学者

python - 递归类型注释

python - 从另一行值中为用户赋值

python - 与 Pandas 的互相关(时滞相关)?

python - 为具有计算值 NetworkX 的图形编写标题

python - Selenium 与 Firefox - 优雅地将控制权留给用户

python - 打开终端运行命令python

python - 根据条件修改值

python-3.x - 使用 Matplotlib 创建简单的时间表