码迷,mamicode.com
首页 > 编程语言 > 详细

[Python] Normalize the data with Pandas

时间:2017-12-18 01:16:22      阅读:178      评论:0      收藏:0      [点我收藏+]

标签:技术   es2017   nan   otl   run   blog   style   import   star   

import os
import pandas as pd
import matplotlib.pyplot as plt

def test_run():
    start_date=2017-01-01
    end_data=2017-12-15
    dates=pd.date_range(start_date, end_data)

    # Create an empty data frame
    df=pd.DataFrame(index=dates)

    symbols=[SPY, AAPL, IBM, GOOG, GLD]
    for symbol in symbols:
        temp=getAdjCloseForSymbol(symbol)
        df=df.join(temp, how=inner)

    return df   


def normalize_data(df):
    """ Normalize stock prices using the first row of the dataframe """
    df=df/df.ix[0, :]
    return df


def getAdjCloseForSymbol(symbol): 
    # Load csv file
    temp=pd.read_csv("data/{0}.csv".format(symbol), 
        index_col="Date", 
        parse_dates=True,
        usecols=[Date, Adj Close],
        na_values=[nan])
    # rename the column
    temp=temp.rename(columns={Adj Close: symbol})
    return temp

def plot_data(df, title="Stock prices"):
    ax=df.plot(title=title, fontsize=10)
    ax.set_xlabel("Date")
    ax.set_ylabel("Price")
    plt.show()


if __name__ == __main__:
    df=test_run()
    # data=data.ix[‘2017-12-01‘:‘2017-12-15‘, [‘IBM‘, ‘GOOG‘]]    
    df=normalize_data(df)
    plot_data(df)
    """
                       IBM         GOOG
    2017-12-01  154.759995  1010.169983
    2017-12-04  156.460007   998.679993
    2017-12-05  155.350006  1005.150024
    2017-12-06  154.100006  1018.380005
    2017-12-07  153.570007  1030.930054
    2017-12-08  154.809998  1037.050049
    2017-12-11  155.410004  1041.099976
    2017-12-12  156.740005  1040.479980
    2017-12-13  153.910004  1040.609985
    2017-12-15  152.500000  1064.189941
    """

It is easy to compare the data by normalize it.

 

技术分享图片

[Python] Normalize the data with Pandas

标签:技术   es2017   nan   otl   run   blog   style   import   star   

原文地址:http://www.cnblogs.com/Answer1215/p/8053778.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!