У меня есть фрейм данных с пользовательскими данными, такими как:
|--user id--|--registration_date--|--voucher campaign--|--transaction id--|--price--|--purchase date--|
|--5433126--|-- 2015-05-23 --|-- tlp05 --|--68536116696879--|--18.00--|-- 2015-05-23--|
|--5433126--|-- 2015-05-23 --|-- tlp05 --|--68435132139899--|-- 7.00--|-- 2015-05-29--|
|--9865313--|-- 2015-06-01 --|-- zig15 --|--97889200016487--|--23.00--|-- 2015-06-15--|
|--7879463--|-- 2015-05-27 --|-- tlp10 --|-- NaN --|-- NaN --|-- NaN --|
...
Я хочу создать дополнительный столбец, который будет содержать строку, рассказывающую мне об общей активности пользователей в покупках:
Never
если пользователь никогда ничего не покупал;
Once
если пользователь купил что-то только один раз;
Multiple
если пользователь купил что-то несколько раз;
, поэтому мой желаемый результат будетбыть таким:
|--user id--|--registration_date--|--voucher campaign--|--transaction id--|--price--|--purchase date--|--activity--|
|--5433126--|-- 2015-05-23 --|-- tlp05 --|--68536116696879--|--18.00--|-- 2015-05-23--|--Multiple--|
|--5433126--|-- 2015-05-23 --|-- tlp05 --|--68435132139899--|-- 7.00--|-- 2015-05-29--|--Multiple--|
|--9865313--|-- 2015-06-01 --|-- zig15 --|--97889200016487--|--23.00--|-- 2015-06-15--|-- Once--|
|--7879463--|-- 2015-05-27 --|-- tlp10 --|-- NaN --|-- NaN --|-- NaN --|-- Never--|
...
Каков был бы наиболее эффективный способ добиться этого, не просто зацикливаясь на всем фрейме данных, разделяя его по идентификатору пользователя и проверяя, были ли какие-либо покупки?