Я пытаюсь сгенерировать годовые данные для определенного продукта, когда у меня есть данные за базовый год и темпы роста.
В примере с игрушкой у каждого продукта свой годовой темп роста эффективности в зависимости от его «цвета», и я хочу генерировать годовые данные до 2030 года.
Поэтому у меня есть данные базового года (base_year) следующим образом:
year color shape efficiency
0 2018 red circle 50
1 2018 red square 30
2 2018 blue circle 100
3 2018 blue square 60
И каждый тип темпа роста продукта (скорость роста) как:
color rate
0 red 30
1 blue 20
Результаты, к которым я стремлюсь:
year color shape efficiency
0 2018 red circle 50
1 2018 red square 30
2 2018 blue circle 100
3 2018 blue square 60
4 2019 red circle 65
5 2019 red square 39
6 2019 blue circle 120
7 2019 blue square 72
8 2020 red circle 84.5
... (until 2030)
Данные, использованные в игрушечном коде, являются ..
base_year = pd.DataFrame(data = {'year': [2018,2018,2018,2018],
'color': ['red', 'red', 'blue', 'blue'],
'shape' : ['circle', 'square', 'circle', 'square'],
'efficiency' : [50, 30, 100, 60]}, columns = ['year', 'color', 'shape', 'efficiency'])
growthrate = pd.DataFrame(data = {'color': ['red', 'blue'],
'rate' : [30, 20]}, columns = ['color', 'rate'])
Я пробовал какой-то подход с использованием .loc, но кажется, что такой подход довольно неэффективен.
Любые предложения или советы будут оценены. Заранее спасибо!