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

问题描述

初学者的问题浮出水面,似乎无法解决问题。

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

Clonable

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

谢谢您的帮助。

解决方法

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