Ich bin sehr neu in der Codierung, aber genieße es wirklich rumspielen mit Daten aus Yahoo Finanzen ziehen. Ich habe bisher einen Code entwickelt, der den Schlusskurs für ausgewählte Ticker abzieht und die monatliche Veränderung in% berechnet - sie wird als eine transponierte Tabelle mit zwei Spalten angezeigt. Wenn ich die Daten in einem Datenframe zurückgebe, möchte ich in der Lage sein, beide Spalten mit .columns zu benennen, aber es scheint die linke Spalte überhaupt nicht zu erkennen (die mit den Tickern). Wenn ich versuche, mehr als 1 Artikel an .column zu übergeben, gibt es eine Fehlermeldung, dass es nur 1 Spalte gibt. Weiß jemand, warum das so wäre und wie ich die Daten manipulieren könnte, damit die linke Spalte erkannt wird?Links am meisten Spalte nicht erkannt, wenn transponiert - Yahoo Finance Pandas
symbols_list = ["AAPL", "TSLA"]
d = {}
for x in symbols_list:
try:
d[x] = web.DataReader(x, "yahoo", '2015-12-31')
except:
print "Can't find ", x
ticker = pd.Panel(d)
df1 = ticker.minor_xs('Adj Close')
daily = df1.resample('B', how=lambda x: x)
monthly_change = daily.pct_change(periods = 24)
past_month_change = monthly_change.tail(1)
transposed = past_month_change.transpose()
transposed.columns = ["Monthly % Change"] #This works, but only names the right column, not the left.
Spalten eine Liste mehrerer Elemente nehmen können. Du gibst nur einen ein. – Parfait
als @Parfait, hat bereits gesagt, dass Sie es so machen sollten: 'df.columns = ['col1', 'col2', 'colN']' oder alternativ können Sie das tun: 'df = df.rename (columns = {'col1': 'links', 'col5': 'new_col_name'}) ' – MaxU
Sorry, vielleicht war ich nicht klar. Wenn ich versuche, mehr als einen Gegenstand zu übergeben, gibt es eine Fehlermeldung, dass es nur 1 Spalte, aber 2 Spaltenüberschriften gibt. – Andy