2016-04-27 6 views
2

Ich habe ein Pandas Datenframe bestehend aus Datumsbereich als Index und eine Spalte und 2192 Zeilen. Ich bin in der Lage diesen Datenrahmen auf Histogramm darstellen, aber wenn ich versuche, Mittelwert und Standardabweichung des Datenrahmen auf Histogramm enthalten erhalte ich eine Valueerror auf diesen Linien verursachtPlotten Histogramm von Pandas Dataframe mit seinem Mittelwert und Standardabweichung, erhalten 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

Der Fehler in DATAEXTRACT ist. py meiner Repository auf github

ich habe durch diese link auch weg, aber es hat nicht lösen mein Problem

+3

http://stackoverflow.com/help/mcve –

+0

gespeichert unter sieht aus wie Ihre 'mean' ist kein' float ', aber eine' Pandas '' Serie'. Überprüfen Sie, welchen Wert Sie von 'daily_returns.mean()' zurückgeben. – tom

+0

@tom die Werte zurückgegeben von 'code'daily_returns.mean()' code' und 'code'daily_returns.std()' code' ist float64 – harindersingh

Antwort

3

Das Problem ist, dass Sie versuchen, eine 1-Punkt-Serie i zu verwenden n axvline anstelle eines Schwimmers.

Die .mean() eines pandas.DataFrame ist ein pandas.Series, kein Schwimmer.

In diesem Fall können Sie das Problem beheben, indem nur den Wert in der Series

plt.axvline(mean[0], color='w', linestyle='dashed', linewidth=2) 
Verwandte Themen