df
index col1
------------------------
0 2017-01-01
1 a
2 b
3 c
4 2017-01-02
5 d
6 e
7 f
8 2017-01-03
9 g
10 h
11 i
预期df
index col1 col2
------------------------------------------
0 2017-01-01 a
1 2017-01-01 b
2 2017-01-01 c
3 2017-01-02 d
4 2017-01-02 e
5 2017-01-02 f
6 2017-01-03 g
7 2017-01-03 h
8 2017-01-03 i
我想为日期下面的所有值分配日期,并将它们放在col1的两个不同列(col1和col2)下的同一行上。
答案 0 :(得分:0)
遵循以下原则:
keep_rows = df['col1'].str.len() == 1 # These rows do not have dates
df['col2'] = np.nan
df.loc[~keep_rows, 'col2'] = df.loc[~keep_rows, 'col1']
df['col2'] = df['col2'].ffill()
df = df.loc[keep_rows]
答案 1 :(得分:0)
在创建 datetime K.clear_session()
之后,对熊猫数据框/系列在ffill
中使用向前填充(fillna
)方法。
col2