金融數據在今天的商業世界中至關重要。從個人金融投資到公司財務管理,都需要大量的數據來支持決策。Python的pandas和pandas_datareader可以將這些數據獲取和處理變得更加簡便。
一、pandas_datareader簡介
pandas_datareader是pandas庫的一個子庫,它可以通過一些預定義數據源來收集多種金融數據,如股票價格、匯率、期貨等。目前pandas_datareader支持18個預定義數據源,包括Yahoo Finance、Quandl、FRED等。其中Yahoo Finance是最常用的數據源,因為它提供了大量的股票價格和指數數據,並且免費提供數據API。
接下來,讓我們通過一個簡單的例子來了解如何使用pandas_datareader獲取數據。
二、使用pandas_datareader獲取股票價格數據
在這個例子中,我們將使用pandas_datareader從Yahoo Finance獲取蘋果公司(AAPL)的歷史股票價格數據。
# 導入必要的庫 import pandas_datareader.data as web import datetime # 定義開始和結束時間 start = datetime.datetime(2018, 1, 1) end = datetime.datetime(2020, 1, 1) # 獲取蘋果公司的股票價格數據 df = web.DataReader('AAPL', 'yahoo', start, end) # 列印前幾行數據 print(df.head())
在這段代碼中,我們首先導入了pandas_datareader庫,然後定義了開始和結束時間,再使用DataReader函數從Yahoo Finance獲取AAPL在開始和結束時間之間的股票價格數據。最後,我們列印了前幾行數據。
執行上述代碼,我們可以得到輸出結果:
High Low Open Close Volume Adj Close Date 2017-12-29 28.657499 28.379999 28.487499 28.538570 66020800.0 27.914204 2018-01-02 28.937500 28.690001 28.947500 27.834904 102223600.0 27.225672 2018-01-03 29.127501 28.937500 28.987499 27.834904 118071600.0 27.225672 2018-01-04 29.127501 28.937500 28.995001 28.090582 89738400.0 27.475395 2018-01-05 28.997499 28.912500 28.930000 28.328747 94640000.0 27.706520
在上述輸出中,我們可以看到數據的日期、開盤價、最高價、最低價、收盤價、成交量和復權收盤價(Adj Close)。
三、其他數據源
除了Yahoo Finance,pandas_datareader還支持其他一些預定義數據源,下面簡單介紹一下:
1. Quandl
Quandl提供了來自各種行業的高質量數據,包括股票、期貨、外匯、加密貨幣等。與Yahoo Finance不同,Quandl不免費,但它提供了一個免費的API和一個基本的費用方案。
2. FRED
FRED(聯邦儲備經濟數據)是由美國聯邦儲備銀行提供的一個大型經濟資料庫,它包含了許多重要的經濟指標,如GDP、CPI、失業率等。這些數據可以幫助我們分析宏觀經濟情況。
3. World Bank
世界銀行提供了許多國家的宏觀經濟數據,包括人口、財政、貿易等信息。這些數據可以幫助我們了解不同國家的經濟情況,從而做出更好的決策。
四、總結
pandas_datareader是一個強大的工具,可以幫助我們收集和處理金融數據。通過使用多個預定義數據源,我們可以獲取各種各樣的數據,包括股票價格、匯率、期貨等。在未來的商業和金融世界中,數據將發揮越來越重要的作用,因此學會如何使用pandas_datareader是非常有必要的。
原創文章,作者:WFLR,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/148707.html