Я хочу создать некоторую функцию для получения желаемого результата.Я изучаю R и, следовательно, испытываю трудности при создании кода.
Это примеры фреймов данных, которые я хочу создать для большего набора данных
Фрейм данных 1:
Item LC1 LC2 LC3
8T4121 MW92 OY01 RM11
AB7654 MW92 WK14 RM11
AB7654 MW92 WK14 RS11
Кадр данных 2:
Item LC custfcst
8T4121 MW92 10
8T4121 OY01 12
8T4121 RM11 10
AB7654 MW92 20
AB7654 WK14 10
AB7654 RM11 8
AB7654 RS11 21
Кадр данных 3:
Item LC ToLC Rolledfcst
8T4121 MW92 OY01 22
8T4121 OY01 RM11 10
AB7654 MW92 WK14 30
AB7654 WK14 RM11 12
AB7654 WK14 RS11 10
Кадр данных 4:
Item LC Safetystock(SS) X
8T4121 MW92 15 .25
8T4121 OY01 7 .25
8T4121 RM11 5 .25
AB7654 MW92 30 .25
AB7654 WK14 8 .25
AB7654 RM11 20 .25
AB7654 RS11 15 .25
Ожидаемый результат:
Item LC1 Pcntg Share RemSS FinalSS Leftover
8T4121 MW92 10/(22+10) Pcntg*SS SS-Share Share+X*RemSS SS-FinalSS
8T4121 OY01 12/(10+12) Pcntg*SS SS-Share Share+X*RemSS SS-FinalSS
8T4121 RM11 NA
Примечание:Здесь Остаток в Item 8T4121 и LC1 должны быть добавлены в SafetyStock в Dataframe 4 для того же Item, тогда только следующие вычисления должны произойти в 8T4121 и OY01
Шаги: 1. В Dataframe это полоса, из которой вытекает элементLC1 -> LC2 -> LC3
Для вывода по одному элементу, custfcst должен быть взят из DF2, Rolledfcst должен быть взят из DF3 для вычисления Pcntg
Аналогично, должны быть рассчитаны Share, RemSS, FinalSS, Остаток
После того, как мы вычислим для 1-го предмета, остаток должен быть добавлен в страховой запас для следующего LC для того же предмета
Когда мы наконец придемLC в Dataframe 1 для определенного элемента нет, тогда только SS + Остаток на предыдущем Lc должен быть добавлен.Никаких дальнейших вычислений не требуется.
В случае элемента AB7654 при вычислении астры в Wk 14 он должен делить оставшиеся SS в равных долях между RM11 и RS11