Кто-нибудь может объяснить этот код?
for i in range(1,10): full_df[f'prev_target_{i}'] = full_df.sort_values(by='ID') ['Segmentation'].fillna(method='bfill').shift(-i).sort_index()
Как вы, возможно, сможете сделать вывод из документации, расположенной здесь, shift сдвинет ваши столбцы на пару периодов вниз, и вы затем можете использовать fillna (), если вы используете sh. У него даже есть собственный параметр заполнения.
https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.shift.html