使用Python将每周数据转换为每日数据 [英] Convert weekly data into daily data with Python

查看:684
本文介绍了使用Python将每周数据转换为每日数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在这个问题上,我会尽量保持清楚.假设我有一个数据框,格式为:

I will try to be as clear as possible in this question. Let's say I have a dataframe formed as:

Date          Quantity
05/05/2017    34
12/05/2017    24
19/05/2017    45
26/05/2017    23
2/06/2017     56
9/06/2017     32

我想将此具有每周数据(如您所见)的数据框转换为具有每日数据的数据框.但是,我的数据框中(例如周末)会出现一些漏洞".我已经将每日日期存储到另一个变量中. 我想获得这样的东西:

I would like to convert this dataframe having weekly data (as you see) into one having daily data. However, there will be some "holes" in my dataframe (ex. week-end days). I already have stored the daily dates into another variable. I would like to obtain something like this:

Date          Quantity
05/05/2017    34
08/05/2017    34
09/05/2017    34
...           ...
2/06/2017     56
5/06/2017     56
6/06/2017     56
...           ...

我的想法是要有一个循环,其内容是:当日期早于每周数据帧中的日期(例如2017年5月19日)但高于前一个日期(所以12/05/2017)时,我想要在每日数据帧的数量"列中添加正确的数字(在本例中为45).

My idea is to have a loop that says "whenever the date is prior to the date in the weekly dataframe (ex. 19/05/2017) but higher than the previous date (so 12/05/2017), I want to append to the column "Quantity" in the daily dataframe the correct number (in this case 45).

但是,我不知道如何在Python中执行此操作.我应该将日期转换成数字,然后再转换回日期吗?有谁有更快的方法来做到这一点?非常感谢

However, I do not know how to do this in Python. Should I convert the dates into numbers and then back to dates? Does anyone have any faster way to do this? Thank you very much

推荐答案

以下是使用

Here's an option using resample with business day frequency (B) and forward fill:

df['Date'] = pd.to_datetime(df.Date, format='%d/%m/%Y')    
df.set_index('Date').resample('B').ffill().reset_index()

#         Date  Quantity
#0  2017-05-05      34
#1  2017-05-08      34
#2  2017-05-09      34
#...
#20 2017-06-02      56
#21 2017-06-05      56
#22 2017-06-06      56
#...

这篇关于使用Python将每周数据转换为每日数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆