У меня есть фрейм данных, который суммирует сумму в долларах, которую клиент имеет на своем счете в течение определенного месяца.Если у клиента нет денег, сумма просто равна 0. Фрейм данных выглядит следующим образом:
A B C D E F
11/30/2015 0 1000 0 0 5000 0
12/31/2015 2000 1000 0 3000 5000 2000
1/31/2016 2000 0 0 3000 5000 2000
2/29/2016 2000 2000 4000 3000 5000 2000
3/31/2016 2000 2000 4000 0 10000 2000
4/30/2016 0 2000 4000 0 10000 0
5/31/2016 0 2000 4000 0 10000 0
Когда клиент впервые становится активным, он переходит от 0 к номинальной сумме за конкретный месяц.(или они начинаются с номинальной суммы в ноябре).Поэтому, когда конкретный клиент имеет свою первую номинальную сумму, это месяц, в котором они являются «новыми».
Я хочу добавить столбец в конце информационного кадра, который суммирует сумму для «новых» клиентов.
Мне удалось подсчитать количество «новых» клиентов (см. Код ниже), но я не могу изменить код для суммирования значений.
def new_customer(column):
return column[-1] and not any(column[:-1])
table['new_loans'] = table.iloc[:, len(table.columns)].expanding().apply(new_customer).sum(axis=1).astype(int)
Полученный кадр данныхдолжно выглядеть так:
A B C D E F New_Customers
11/30/2015 0 1000 0 0 5000 0 6000
12/31/2015 2000 1000 0 3000 5000 2000 7000
1/31/2016 2000 0 0 3000 5000 2000 0
2/29/2016 2000 2000 4000 3000 5000 2000 4000
3/31/2016 2000 2000 4000 0 10000 2000 0
4/30/2016 0 2000 4000 0 10000 0 0
5/31/2016 0 2000 4000 0 10000 0 0