resample进行重采样

重采样会根据得到的日期参数把数据进行展示,会把数据从一个频率转换到另一个频率,

主要有如下三类:

1.上采样:从低频率到高频率(比如:从每月到每天)

2.下采样:从高频率到低频率(比如:从每天到每月)

3.原样采样:采样频率不变(比如从每月得第一个星期四到每月得最后一个星期五)

resample有图个rule参数,用于接收偏移量字符串,对于改参数可能取得的值可以参考date_range创建日期范围freq参数取值表及创建示例_我就是一个小怪兽的博客-CSDN博客

import pandas as pd
ebola=pd.read_csv(r'D:\pandas活用\pandas_for_everyone-master\data/country_timeseries.csv',parse_dates=[0])
ebola['date_dt']=pd.to_datetime(ebola['Date'],format='%m/%d/%Y')
ebola.index=ebola.date_dt#将ebola的索引设置为date_dt列,即datetime类型
print(ebola.info())

'''<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 122 entries, 2015-01-05 to 2014-03-22
Data columns (total 19 columns):
 #   Column               Non-Null Count  Dtype         
---  ------               --------------  -----         
 0   Date                 122 non-null    datetime64[ns]
 1   Day                  122 non-null    int64         
 2   Cases_Guinea         93 non-null     float64       
 3   Cases_Liberia        83 non-null     float64       
 4   Cases_SierraLeone    87 non-null     float64       
 5   Cases_Nigeria        38 non-null     float64       
 6   Cases_Senegal        25 non-null     float64       
 7   Cases_UnitedStates   18 non-null     float64       
 8   Cases_Spain          16 non-null     float64       
 9   Cases_Mali           12 non-null     float64       
 10  Deaths_Guinea        92 non-null     float64       
 11  Deaths_Liberia       81 non-null     float64       
 12  Deaths_SierraLeone   87 non-null     float64       
 13  Deaths_Nigeria       38 non-null     float64       
 14  Deaths_Senegal       22 non-null     float64       
 15  Deaths_UnitedStates  18 non-null     float64       
 16  Deaths_Spain         16 non-null     float64       
 17  Deaths_Mali          12 non-null     float64       
 18  date_dt              122 non-null    datetime64[ns]
dtypes: datetime64[ns](2), float64(16), int64(1)
memory usage: 19.1 KB
None'''

down=ebola.resample('M').mean()#下采样
print(down.iloc[:5,:5])


'''                Day  Cases_Guinea  Cases_Liberia  Cases_SierraLeone  \
date_dt                                                                  
2014-03-31    4.500000     94.500000       6.500000           3.333333   
2014-04-30   24.333333    177.818182      24.555556           2.200000   
2014-05-31   51.888889    248.777778      12.555556           7.333333   
2014-06-30   84.636364    373.428571      35.500000         125.571429   
2014-07-31  115.700000    423.000000     212.300000         420.500000   

            Cases_Nigeria  
date_dt                    
2014-03-31            NaN  
2014-04-30            NaN  
2014-05-31            NaN  
2014-06-30            NaN  
2014-07-31       1.333333 '''


up=down.resample('D').mean()
print(up.iloc[:5,:5])

'''         Day  Cases_Guinea  Cases_Liberia  Cases_SierraLeone  Cases_Nigeria
date_dt                                                                       
2014-03-31  4.5          94.5            6.5           3.333333            NaN
2014-04-01  NaN           NaN            NaN                NaN            NaN
2014-04-02  NaN           NaN            NaN                NaN            NaN
2014-04-03  NaN           NaN            NaN                NaN            NaN
2014-04-04  NaN           NaN            NaN                NaN            NaN'''

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱打羽毛球的小怪兽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值