У меня есть один фрейм данных и одна серия, фрейм данных - это базовые данные о стоимости для каждого респондента, а ряд - это ставка дисконта, которую следует умножить на базовые данные.
Например, базовые данные(фрейм данных):
cost1 cost2
John 100 50
Tom 50 100
Andy 50 200
Mark 80 300
и данные о скидках (серии):
John 0.7
Tom 0.6
Andy 0.9
Mark 0.5
Поэтому желаемый результат:
cost1 cost2
John 70 35
Tom 30 60
Andy 45 180
Mark 40 150
Метод, который я пришелв итоге это:
customer_list = base.index.tolist()
for k in customer_list:
base.loc[k] = base.loc[k]*discount.loc[k]
Это работает (дает мне желаемый результат), но я чувствую, что это довольно неэффективно.В моем реальном приложении размер данных достаточно велик, поэтому для выполнения такой итерации требуется достаточно времени.
Есть предложения по эффективному вычислению?Я думаю, что может быть какой-то эффективный способ сделать такой расчет в целом, используя индекс.(базовая * скидка, конечно, не сработала ...)
спасибо заранее!