zoukankan      html  css  js  c++  java
  • pandas时序处理相关功能

    创建时间序列

    函数pd.date_range()
    根据指定的范围,生成时间序列DatetimeIndex,每隔元素的类型为Timestamp。该函数应用较多。

    ts = pd.date_range('2017-09-01', periods=10, freq='d', normalize=False)
    ts
    

    输出为:

    DatetimeIndex(['2017-09-01', '2017-09-02', '2017-09-03', '2017-09-04',
                   '2017-09-05', '2017-09-06', '2017-09-07', '2017-09-08',
                   '2017-09-09', '2017-09-10'],
                  dtype='datetime64[ns]', freq='D'
    

    主要的入参解析:
    start: 开始时刻,可以是字符串或者datetime类型的值。默认None。
    end: 结束时刻,可以是字符串或者datetime类型的值,如果指定了长度,即periods,则可不设置。默认None。
    periods: 时序的长度,整型类型。如果有end,可不设置。默认None。
    freq: 时序生成的频率,即每隔多少时刻生成一个时序点。字符串类型或者DateOffset类型。默认'D',即天粒度,见上述代码输出。
    tz: 时区,字符串类型。默认None。
    normalize: bool类型,没用过,不知道干啥的。
    name: 设置时序的名称,字符串类型,默认None。
    closed: 是否包含两边的值。默认None,即两边都保留。
    其中,freq的取值可以为如下的符号表示间隔,可以结合符号和数字,如'3d',表示每隔三天记录一个时间点。大小写都可以。

    B	business day frequency
    C	custom business day frequency (experimental)
    D	calendar day frequency
    W	weekly frequency
    M	month end frequency
    SM	semi-month end frequency (15th and end of month)
    BM	business month end frequency
    CBM	custom business month end frequency
    MS	month start frequency
    SMS	semi-month start frequency (1st and 15th)
    BMS	business month start frequency
    CBMS	custom business month start frequency
    Q	quarter end frequency
    BQ	business quarter endfrequency
    QS	quarter start frequency
    BQS	business quarter start frequency
    A	year end frequency
    BA	business year end frequency
    AS	year start frequency
    BAS	business year start frequency
    BH	business hour frequency
    H	hourly frequency
    T, min	minutely frequency
    S	secondly frequency
    L, ms	milliseconds
    U, us	microseconds
    N	nanoseconds
    

    http://pandas.pydata.org/pandas-docs/stable/timeseries.html#offset-aliases

    字符串转换为时间戳

    pd.to_datetime() 函数可以将表示时间的字符串转换位TimeStamp。

    pd.to_datetime('2017-09-01')
    

    输出为:

    Timestamp('2017-09-01 00:00:00')
    

    常用的参数:
    format: 用来设置字符串的格式,默认如上所示。

    时间戳的加减

    有时候需要将时间进行增减,可以使用类型:DateOffset。

    pd.to_datetime('2017-09-01') + pd.DateOffset(days=10) 
    

    输出为:

    Timestamp('2017-09-11 00:00:00')
    

    DateOffset常用的参数:
    months,设置月。
    days,设置天。
    years,设置年。
    hours,设置小时。
    minutes,设置分钟。
    seconds,设置秒。
    以上可以同时设置,组合使用。

    pd.to_datetime('2017-09-01') + pd.DateOffset(seconds=10, days = 10)
    

    输出为:

    Timestamp('2017-09-11 00:00:10')
    
  • 相关阅读:
    h5 拍照上传 代码
    java jdbc 链接本地mysql数据库 报错 Access denied for user 'root'@'localhost' (using password: YES)
    react.js 中对props 的理解
    react.js 如何 设置页面div 背景图片
    关于Vue.js 和 react.js 的异同
    如何用 npm ,搭建react 项目
    如何进行vue vux版本更新
    js 继承 函数
    absolute 和 z-index妙用
    关于 white-space: pre-wrap;的灵异现象
  • 原文地址:https://www.cnblogs.com/ledao/p/15085689.html
Copyright © 2011-2022 走看看