2016-03-14 279 views
0

我從雅虎下載的股票數據文件現在,下載的數據幀得到保存爲AAPL,GOOG,YHOO和NFLX符號遍歷大熊貓dataframes

list_of_stocks = ['AAPL', 'GOOG', 'YHOO', 'NFLX'] 
for symbols in list_of_stocks: 
    globals()['%s' % symbols] = DataReader(symbols, 'yahoo') 

的名單列表。然後,我想所有這些DFS傳遞給一個函數,例如

def check(data): 
    return data 

我的問題是如何把所有這些DFS檢查功能?我想:

for symbols in list_of_stocks: 
    print(check(symbols)) 

這不是爲我工作,這個循環只是發送字符串(AAPL,...),而不是實際的數據幀。

回答

0

您設法聲明和分配變量,但不知道如何訪問它們。這讓我覺得你在問題細節中的第一個片段不是你寫的。

由於這個想法,我將解釋你的第一個片段正在做什麼。

list_of_stocks = ['AAPL', 'GOOG', 'YHOO', 'NFLX'] 
for symbols in list_of_stocks: 
    globals()['%s' % symbols] = DataReader(symbols, 'yahoo') 

好吧,你叫globals()功能,讓您可以在其中時,它試圖找到全局變量的解釋看起來參考字典。然後,將數據框作爲值輸入,並在字符串中使用對應的鍵symbols。在for循環中遍歷symbols,我們完成了。

現在,鑑於剛剛迭代的相同列表,您如何從字典中再次獲取值?

for symbols in list_of_stocks: 
    print(check(globals()['%s' % symbols])) 

您分配給他們的方式。期。

+0

謝謝!快速修復! – ramesh