使用 yFinance 向我的数据框添加一列

adding a column to my dataframe with yFinance

出现新手问题,似乎无法将这些点联系起来。

我有一个名为 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)

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

提前感谢您的帮助。

有很多方法可以将数据添加到列中,例如 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