美文网首页
【2019-03-31】Basic Time Series Ma

【2019-03-31】Basic Time Series Ma

作者: BigBigFlower | 来源:发表于2019-03-31 16:40 被阅读0次

    基础pandas 时序操作
    基本操作:
    (1)建立日期范围

    import pandas as pd
    from datetime import datetime
    import numpy as np
    date_rng=pd.date_range(start='1/1/2018',end='1/08/2018',freq='H')
    
    image.png

    检测元素类型

    type(date_rng[0])
    
    image.png

    查看前15个元素。

    df = pd.DataFrame(date_rng, columns=['date'])
    df['data'] = np.random.randint(0,100,size=(len(date_rng)))
    df.head(15)
    
    image.png

    (2)使用时间戳
    转换 data frame index 到 a datetime index

    df['datetime'] = pd.to_datetime(df['date'])
    df = df.set_index('datetime')
    df.drop(['date'], axis=1, inplace=True)
    df.head()
    
    image.png
    string_date_rng = [str(x) for x in date_rng]
    
    image.png

    (3)字符串转换为时间戳
    转换字符串为时间戳:

    timestamp_date_rng = pd.to_datetime(string_date_rng,infer_datetime_format=True)
    
    image.png
    string_date_rng_2 = ['June-01-2018', 'June-02-2018','June-03-2018']
    
    image.png
    timestamp_date_rng_2 = [datetime.strptime(x,'%B-%d-%Y') for x in string_date_rng_2]
    
    image.png

    (4)索引切片时间序列

    df2 = pd.DataFrame(timestamp_date_rng_2, columns=['date'])
    
    image.png
    df[df.index.day == 2]
    
    image.png

    查看两个确定的时间之间的时间:

    df['2018-01-04':'2018-01-06']
    
    image.png

    (5)重新计算时间序列以获取不同时间段的聚合/汇总统计信息
    以不同的频率重采样数据,指定如何计算新采样频率的汇总统计。

    df.resample('D').mean()
    
    image.png

    (6)计算滚动统计量,3个窗口

    df['rolling_sum'] = df.rolling(3).sum()
    df.head(10)
    
    image.png

    (7)处理缺失的数据

    df['rolling_sum_backfilled'] =df['rolling_sum'].fillna(method='backfill')df.head(10)
    df.head(10)
    
    image.png

    (8)unix /epoch

    epoch_t = 1529272655
    real_t = pd.to_datetime(epoch_t, unit='s')
    real_t
    
    image.png
    real_t.tz_localize('UTC').tz_convert('US/Pacific')
    
    image.png

    相关文章

      网友评论

          本文标题:【2019-03-31】Basic Time Series Ma

          本文链接:https://www.haomeiwen.com/subject/vaaybqtx.html