У меня есть фрейм данных, и я хочу создать несколько новых столбцов, которые содержат рост исходных столбцов.
Сначала я добавляю новые столбцы к фрейму данных, заполняя их значениями NaN.
Затем для каждой строки я проверяю, соответствует ли предыдущая строка предыдущему году и соответствует ли она Я хочу заполнить новый столбец с ростом переменной. В противном случае я просто оставляю значение NaN.
Вот мой код:
for index, row in df.iterrows():
if df.loc[index,'year'] == df.loc[index - 1, 'year'] + 1 and df.loc[index,'name'] == df.loc[index - 1, 'name']:
df.loc[index,k:] = (df.loc[index,1:k-1]/df.loc[index-1,1:k-1]) - 1
Где k - индекс столбца первого нового столбца «роста», который я создал.
Проблема с этим кодом состоит в том, что он оставляет новые столбцы со значениями NaN, не внося никаких изменений. Я сделал что-то не так?
Спасибо