【问题标题】:nested pandas iterrows involving on-the-fly dataframe objects涉及即时数据框对象的嵌套熊猫迭代
【发布时间】:2019-02-15 15:44:17
【问题描述】:

我的脚本采用 F500 公司的“​​实时”在线列表,遍历每个股票代码,在定义的时间段内获取股票代码的表现。我想不通的是如何架构/存储到 2D 列表中,每个符号多行代码数据。不知何故,第二次迭代将不起作用。提前致谢:

import pandas as pd #dataframe extends from pd
import pandas_datareader.data as web #grabs stock data
import datetime as dt #to specify date range for grab

#VARS:
#url to f500 list
data_url = "https://query.data.world/s/vjghzuarkh6dap3dblkxanppyh5jtl" 
source = "yahoo" 
start = dt.datetime(2019, 2, 13) #datetime type
end = dt.datetime.now()    
results = []

#read into memory
df500 = pd.read_csv(data_url)

for index, row in df500.tail().iterrows(): 

    try:

        dfdr = web.DataReader(row['SYMBOL'], source, start, end) #returns a dataframe presumably

        for index2, row2 in dfdr().iterrows(): 
            # here i want to append to the results list: row['SYMBOL'], row2['Date'], row2['High']
            print ("test output ", row2[0]) #not even this works

    except Exception as e: 
        pass

# commit to sqlite3 from list or df

【问题讨论】:

    标签: python pandas dataframe datareader


    【解决方案1】:

    这里dfdr后面的括号是错误的:

    dfdr().iterrows()
    

    应该是:

    dfdr.iterrows()
    

    【讨论】:

    • 谢谢!多么菜鸟的错误!阿波尔斯。我猜是漫长的一天。干杯。
    猜你喜欢
    • 2019-07-19
    • 2020-05-17
    • 2015-12-09
    • 2021-02-15
    • 2016-07-07
    • 1970-01-01
    • 2023-02-03
    • 2018-12-03
    • 2017-11-28
    相关资源
    最近更新 更多