2016-03-14 50 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