import numpy as np
import pandas as pd
from pandas import Series, DataFrame
import matplotlib. pyplot as plt
% matplotlib inline
apple = pd. read_csv( 'data/AAPL.csv' )
apple. head( )
Date Open High Low Close Adj Close Volume 0 1980-12-12 0.513393 0.515625 0.513393 0.513393 0.421597 117258400 1 1980-12-15 0.488839 0.488839 0.486607 0.486607 0.399601 43971200 2 1980-12-16 0.453125 0.453125 0.450893 0.450893 0.370272 26432000 3 1980-12-17 0.462054 0.464286 0.462054 0.462054 0.379437 21610400 4 1980-12-18 0.475446 0.477679 0.475446 0.475446 0.390436 18362400
apple. dtypes
Date object
Open float64
High float64
Low float64
Close float64
Adj Close float64
Volume int64
dtype: object
apple. info( )
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 9296 entries, 0 to 9295
Data columns (total 7 columns):
Date 9296 non-null object
Open 9296 non-null float64
High 9296 non-null float64
Low 9296 non-null float64
Close 9296 non-null float64
Adj Close 9296 non-null float64
Volume 9296 non-null int64
dtypes: float64(5), int64(1), object(1)
memory usage: 472.1+ KB
pd. to_datetime( apple[ 'Date' ] )
0 1980-12-12
1 1980-12-15
2 1980-12-16
3 1980-12-17
4 1980-12-18
...
9291 2017-10-17
9292 2017-10-18
9293 2017-10-19
9294 2017-10-20
9295 2017-10-23
Name: Date, Length: 9296, dtype: datetime64[ns]
apple. Date
0 1980-12-12
1 1980-12-15
2 1980-12-16
3 1980-12-17
4 1980-12-18
...
9291 2017-10-17
9292 2017-10-18
9293 2017-10-19
9294 2017-10-20
9295 2017-10-23
Name: Date, Length: 9296, dtype: object
apple2 = apple. copy( )
apple2. Date = pd. to_datetime( apple. Date)
apple2. dtypes
Date datetime64[ns]
Open float64
High float64
Low float64
Close float64
Adj Close float64
Volume int64
dtype: object
apple2. set_index( 'Date' , drop= False )
Date Open High Low Close Adj Close Volume Date 1980-12-12 1980-12-12 0.513393 0.515625 0.513393 0.513393 0.421597 117258400 1980-12-15 1980-12-15 0.488839 0.488839 0.486607 0.486607 0.399601 43971200 1980-12-16 1980-12-16 0.453125 0.453125 0.450893 0.450893 0.370272 26432000 1980-12-17 1980-12-17 0.462054 0.464286 0.462054 0.462054 0.379437 21610400 1980-12-18 1980-12-18 0.475446 0.477679 0.475446 0.475446 0.390436 18362400 ... ... ... ... ... ... ... ... 2017-10-17 2017-10-17 159.779999 160.869995 159.229996 160.470001 160.470001 18997300 2017-10-18 2017-10-18 160.419998 160.710007 159.600006 159.759995 159.759995 16374200 2017-10-19 2017-10-19 156.750000 157.080002 155.020004 155.979996 155.979996 42584200 2017-10-20 2017-10-20 156.610001 157.750000 155.960007 156.250000 156.250000 23974100 2017-10-23 2017-10-23 156.889999 157.690002 155.500000 156.169998 156.169998 21867200
9296 rows × 7 columns
apple2. set_index( 'Date' , drop= True )
Open High Low Close Adj Close Volume Date 1980-12-12 0.513393 0.515625 0.513393 0.513393 0.421597 117258400 1980-12-15 0.488839 0.488839 0.486607 0.486607 0.399601 43971200 1980-12-16 0.453125 0.453125 0.450893 0.450893 0.370272 26432000 1980-12-17 0.462054 0.464286 0.462054 0.462054 0.379437 21610400 1980-12-18 0.475446 0.477679 0.475446 0.475446 0.390436 18362400 ... ... ... ... ... ... ... 2017-10-17 159.779999 160.869995 159.229996 160.470001 160.470001 18997300 2017-10-18 160.419998 160.710007 159.600006 159.759995 159.759995 16374200 2017-10-19 156.750000 157.080002 155.020004 155.979996 155.979996 42584200 2017-10-20 156.610001 157.750000 155.960007 156.250000 156.250000 23974100 2017-10-23 156.889999 157.690002 155.500000 156.169998 156.169998 21867200
9296 rows × 6 columns
apple2. set_index( 'Date' , drop= True , inplace= True )
apple2. head( 10 )
Open High Low Close Adj Close Volume Date 1980-12-12 0.513393 0.515625 0.513393 0.513393 0.421597 117258400 1980-12-15 0.488839 0.488839 0.486607 0.486607 0.399601 43971200 1980-12-16 0.453125 0.453125 0.450893 0.450893 0.370272 26432000 1980-12-17 0.462054 0.464286 0.462054 0.462054 0.379437 21610400 1980-12-18 0.475446 0.477679 0.475446 0.475446 0.390436 18362400 1980-12-19 0.504464 0.506696 0.504464 0.504464 0.414265 12157600 1980-12-22 0.529018 0.531250 0.529018 0.529018 0.434428 9340800 1980-12-23 0.551339 0.553571 0.551339 0.551339 0.452758 11737600 1980-12-24 0.580357 0.582589 0.580357 0.580357 0.476588 12000800 1980-12-26 0.633929 0.636161 0.633929 0.633929 0.520581 13893600
apple2[ 'Adj Close' ] . plot( )
<matplotlib.axes._subplots.AxesSubplot at 0x87bb630>
apple2. tail( )
Open High Low Close Adj Close Volume Date 2017-10-17 159.779999 160.869995 159.229996 160.470001 160.470001 18997300 2017-10-18 160.419998 160.710007 159.600006 159.759995 159.759995 16374200 2017-10-19 156.750000 157.080002 155.020004 155.979996 155.979996 42584200 2017-10-20 156.610001 157.750000 155.960007 156.250000 156.250000 23974100 2017-10-23 156.889999 157.690002 155.500000 156.169998 156.169998 21867200