Pandas---------(4)

本文介绍了Pandas库中关于数据重塑的stack()和unstack()方法,以及pivot_table的使用,重点讲解了时间序列处理,包括频率转换、时区表示与转换、时间跨度转换,以及asfreq函数在季度时间序列处理中的应用。
摘要由CSDN通过智能技术生成

八、改变形状

      Stack

图中df[:4]表示取前4行。

stack()表示将数据的列转换为类似索引。

unstack() 默认把 最后一分组转成列,若指定数,表示把指定的列转为列。

数据透视表

生成数据框

pivot_table ,values代表要取值的列,index表示用作索引的列, colums表示用于取值分异的列。

九、时间序列

    Pandas 在对频率转换进行重新采样时拥有简单、强大且高效的功能(如将按秒采
样的数据转换为按5分钟为单位进行采样的数据)

    

如图所示,将以秒为单位的数据,转换为以5min,即300为一单位的数据,再求和,由于rng 序列数为100,因此resample 5min还是在一个5min单位内,所以在这种情况下ts.sum() 和 ts.resample

('5Min').sum()结果一致。

    1、时区表示:

     

将以正常日期显示的序列转为‘UTC’时区表示的序列;

2、时区转换

   

    如上图所示,将ts_utc转为US/Eastern时间,时间格式还是UTC格式,但时间已变为 ‘当地时间 + 时区时差‘  格式。

  3、时间跨度转换

to_period()是将时间转换成一个时间跨度,to_timestamp()是将时间跨度转为时间戳。

4、时期和时间戳之间的转换使得可以使用一些方便的算数函数。

     

上图中,prng创立了一个以11月为起点的季度时间序列,然后用asfreq函数,将其依次转为以月份‘M’为频率加偏移量1,小时数为第二频率并加偏移量9。注:asfreq函数取值是时间点数据,即时间点数值不变,而时间索引列的频率改变,resample则是 取值时间段 内的数值,数值会进行运算而改变。

    

    

    

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值