What will we cover in this tutorial?In this tutorial we will cover the following. Show
Step 1: What is Pandas Datareader?Pandas-Datareader is an up to date remote data access for pandas. This leads to the next question. What is pandas? Pandas is a data analysis and manipulation tool containing a great data structure for the purpose. Shortly said, pandas can be thought of as a data structure in Python, which is similar to working with data in a spreadsheet. Pandas-datareader reads data from various sources and puts the data into a pandas data structures. Pandas-datareader has a call to return historic stock price data from Yahoo! Finance. To use Pandas-datareader you need to import the library. Step 2: Example reading data from Yahoo! Finance with Pandas-DatareaderLets break the following example down. import pandas_datareader as pdr
import datetime as dt
ticker = "AAPL"
start = dt.datetime(2019, 1, 1)
end = dt.datetime(2020, 12, 31)
data = pdr.get_data_yahoo(ticker, start, end)
print(data)
Where we first import two libraries.
The the following lines.
The output of the code is as follows. High Low ... Volume Adj Close
Date ...
2019-01-02 39.712502 38.557499 ... 148158800.0 38.505024
2019-01-03 36.430000 35.500000 ... 365248800.0 34.669640
2019-01-04 37.137501 35.950001 ... 234428400.0 36.149662
2019-01-07 37.207500 36.474998 ... 219111200.0 36.069202
2019-01-08 37.955002 37.130001 ... 164101200.0 36.756794
... ... ... ... ... ...
2020-12-24 133.460007 131.100006 ... 54930100.0 131.773087
2020-12-28 137.339996 133.509995 ... 124486200.0 136.486053
2020-12-29 138.789993 134.339996 ... 121047300.0 134.668762
2020-12-30 135.990005 133.399994 ... 96452100.0 133.520477
2020-12-31 134.740005 131.720001 ... 99116600.0 132.492020
[505 rows x 6 columns]
Step 3: A few parameters to setYou can get multiple tickers at once by parsing a list of them. import pandas_datareader as pdr
import datetime as dt
ticker = ["AAPL", "IBM", "TSLA"]
start = dt.datetime(2019, 1, 1)
end = dt.datetime(2020, 12, 31)
data = pdr.get_data_yahoo(ticker, start, end)
print(data)
You can get the weekly or monthly data by using the argument as follows. import datetime as dt
ticker = ["AAPL", "IBM", "TSLA"]
start = dt.datetime(2019, 1, 1)
end = dt.datetime(2020, 12, 31)
data = pdr.get_data_yahoo(ticker, start, end, interval='w')
print(data)
Set interval=m to get monthly data instead of weekly with w. Next steps?Want to learn more? This is part of the FREE online course on my page. No signup required and 2 hours of free video content with code and Jupyter Notebooks available on GitHub. Follow the link and read more. Python for Financial Analysis with Pandas Like this:Like Loading... Related |