基于Python中的开始日期序列复制行

RSK*_*RSK 2 python pandas

我想通过从开始日期创建n 个日期的序列来复制数据框中的行。

我的输入文件格式。

col1 col2    date
1    5    2015-07-15
2    6    2015-07-20
3    7    2015-07-25
Run Code Online (Sandbox Code Playgroud)

我的预期输出。

col1 col2     date
1   5       2015-07-15
1   5       2015-07-16
1   5       2015-07-17
1   5       2015-07-18
1   5       2015-07-19
2   6       2015-07-20
2   6       2015-07-21
2   6       2015-07-22
2   6       2015-07-23
2   6       2015-07-24
3   7       2015-07-25
3   7       2015-07-26
3   7       2015-07-27
3   7       2015-07-28
3   7       2015-07-29
Run Code Online (Sandbox Code Playgroud)

我必须创建一个有日差的日期序列。

提前致谢。

jez*_*ael 5

用:

df['date'] = pd.to_datetime(df['date'])

n = 15
#create date range by periods
idx = pd.date_range(df['date'].iat[0], periods=n)
#create DatetimeIndex with reindex and forward filling values
df = (df.set_index('date')
        .reindex(idx, method='ffill')
        .reset_index()
        .rename(columns={'index':'date'}))
print (df)

         date  col1  col2
0  2015-07-15     1     5
1  2015-07-16     1     5
2  2015-07-17     1     5
3  2015-07-18     1     5
4  2015-07-19     1     5
5  2015-07-20     2     6
6  2015-07-21     2     6
7  2015-07-22     2     6
8  2015-07-23     2     6
9  2015-07-24     2     6
10 2015-07-25     3     7
11 2015-07-26     3     7
12 2015-07-27     3     7
13 2015-07-28     3     7
14 2015-07-29     3     7
Run Code Online (Sandbox Code Playgroud)