美文网首页
python时间处理 时间序列 备查

python时间处理 时间序列 备查

作者: jinghenggl | 来源:发表于2020-11-10 00:01 被阅读0次

    时间索引

    df.index = pd.DatetimeIndex(df.index)
    

    时间只保留日期

    df['date'] = df['time'].dt.date
    

    将指定字段格式化为时间类型

    df["date"] = pd.to_datetime(df['时间'])
    

    转化为北京时间

    df['time'] = df['time'].dt.tz_convert('Asia/Shanghai')
    

    转为指定格式,可能会失去秒以后的精度

    df['time'] = df['time'].dt.strftime("%Y-%m-%d %H:%M:%S")
    dc.index = pd.to_datetime(dc.index, format='%Y%m%d', errors='ignore')
    

    时间,参与运算

    pd.DateOffset(days=2)
    

    当前时间

    pd.Timestamp.now()
    pd.to_datetime('today')
    

    判断时间是否当天

    pd.datetime.today().year == df.start_work.dt.year
    df.time.astype('datetime64[ns]').dt.date == pd.to_datetime('today')
    

    定义个天数

    import datetime
    days = lambda x: datetime.timedelta(days=x)
    days(2)
    

    同上,直接用 pd 包装的

    pd.Timedelta(days=2)
    

    unix 时间戳

    pd.to_datetime(ted.film_date, unit='ms')
    

    按月(YMDHminS)采集合计数据

    df.set_index('date').resample('M')['quantity'].sum()
    df.set_index('date').groupby('name')['ext price'].resample("M").sum()
    

    按天汇总,index 是 datetime 时间类型

    df.groupby(by=df.index.date).agg({'uu':'count'})
    

    按周汇总

    df.groupby(by=df.index.weekday).uu.count()
    

    按月进行汇总

    df.groupby(['name', pd.Grouper(key='date', freq='M')])['ext price'].sum()
    

    按月进行汇总

    df.groupby(pd.Grouper(key='day', freq='1M')).sum()
    

    按照年度,且截止到12月最后一天统计 ext price 的 sum 值

    df.groupby(['name', pd.Grouper(key='date', freq='A-DEC')])['ext price'].sum()
    

    按月的平均重新采样

    df['Close'].resample('M').mean()
    

    取时间范围,并取工作日

    rng = pd.date_range(start="6/1/2016",end="6/30/2016",freq='B')
    

    重新定时数据频度,按一定补充方法

    df.asfreq('D', method='pad')
    # 时区,df.tz_convert('Europe/Berlin')
    df.time.tz_localize(tz='Asia/Shanghai')
    

    转北京时间

    df['Time'] = df['Time'].dt.tz_localize('UTC').dt.tz_convert('Asia/Shanghai')
    

    查看所有时区

    from pytz import all_timezones
    print (all_timezones)
    

    时长,多久,两个时间间隔时间,时差

    df['duration'] = pd.to_datetime(df['end']) - pd.to_datetime(df['begin'])
    

    指定时间进行对比

    df.Time.astype('datetime64[ns]') < pd.to_datetime('2019-12-11 20:00:00', format='%Y-%m-%d %H:%M:%S')
    

    相关文章

      网友评论

          本文标题:python时间处理 时间序列 备查

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