【问题标题】:adding a column to my dataframe with yFinance使用 yFinance 向我的数据框添加一列
【发布时间】:2020-10-29 20:47:35
【问题描述】:

初学者的问题来了,似乎无法连接点。

我有一个名为 my_pf 的投资组合数据框,其中包括我用来收集开盘价的代码。我通过接下来的两个步骤成功收集了开场数据。

#create a list from the column 'ticker'
my_tickers = my_pf['ticker'].tolist()

#collect the opening data per ticker
for ticker in my_tickers:
    open_price = yf.Ticker(ticker).info.get('open')
    
    print(ticker, open_price)

下一步是将提取的数据添加到我的初始数据框中。但是我该怎么做呢?

提前感谢您的帮助。

【问题讨论】:

    标签: python pandas dataframe yfinance


    【解决方案1】:

    向列添加数据的方法有很多种,例如 df.append() 和 pd.concat(),但我们使用 df.append() 创建了我们的代码。我们从一个空数据框开始创建股票列和开盘价列。获得开盘价后,我们将品牌名称和开盘价添加到刚刚创建的数据框中。

    import pandas as pd
    import yfinance as yf
    
    # my_tickers = my_pf['ticker'].tolist()
    my_tickers = ['msft', 'aapl', 'goog']
    tickers = yf.Tickers(my_tickers)
    
    df = pd.DataFrame(index=[], columns=['ticker','Open'])
    for ticker in my_tickers:
        open_price = yf.Ticker(ticker).info.get('open')
        df = df.append(pd.Series([ticker,open_price], index=df.columns), ignore_index=True)
        
    print(df)
    
    ticker  Open
    0   msft    204.07
    1   aapl    112.37
    2   goog    1522.36
    

    【讨论】:

    • 很高兴我也能帮助到你。请接受我的回答。
    猜你喜欢
    • 1970-01-01
    • 2021-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-16
    相关资源
    最近更新 更多