rfm_summary#

pymc_marketing.clv.utils.rfm_summary(transactions, customer_id_col, datetime_col, monetary_value_col=None, datetime_format=None, observation_period_end=None, time_unit='D', time_scaler=1, include_first_transaction=False, sort_transactions=True)[fuente]#

Resuma los datos de transacciones para su uso en la modelización de CLV o en la segmentación RFM.

Esto transforma un DataFrame de datos de transacciones de la forma:

customer_id, fecha y hora [, valor_monetario]

a un DataFrame para el modelado de CLV:

customer_id, frecuencia, recencia, T [, valor_monetario]

Si se especifica el argumento include_first_transaction = True, se devuelve un DataFrame para la segmentación RFM:

id_cliente, frecuencia, recencia, valor_monetario

Esta función no es necesaria si se utiliza la utilidad clv.rfm_segments.

Adaptado de la biblioteca heredada lifetimes: CamDavidsonPilon/lifetimes

Parámetros:
transacciones : DataFrameDataFrame

Un DataFrame de Pandas que contiene customer_id_col y datetime_col.

customer_id_colstr

Columna en el DataFrame de transacciones que denota el customer_id.

datetime_colstr

Columna en el DataFrame de transacciones que denota las fechas y horas en las que se realizaron las compras.

monetary_value_col : str, opcionalpython:str, opcional

Columna en el DataFrame de transacciones que denota el valor monetario de la transacción. Opcional; solo se necesita para la segmentación RFM y modelos de estimación de gasto como el modelo Gamma-Gamma.

fin_del_período_de_observación : Union[str, pandas.Period, datetime], opcionalUnión[python:str, pandas.Period, datetime], opcional

Una cadena o fecha y hora para denotar la fecha final del estudio. Los eventos posteriores a esta fecha se truncarán. Si no se proporciona, se establece por defecto en el máximo “datetime_col”.

datetime_format : str, opcionalpython:str, opcional

Una cadena que representa el formato de la marca de tiempo. Útil si Pandas no reconoce el formato proporcionado.

unidad_tiempo : str, opcionalpython:str, opcional

Granularidad de tiempo para el estudio. Predeterminado: “D” para días. Los valores posibles se enumeran aquí: https://numpy.org/devdocs/reference/arrays.datetime.html#datetime-units

time_scaler : int, opcionalpython:int, opcional

Predeterminado: 1. Escala recency y T a una granularidad temporal diferente. Esto es útil para conjuntos de datos que abarcan muchos años y para realizar predicciones en diferentes escalas de tiempo.

datetime_format : str, opcionalpython:str, opcional

Una cadena que representa el formato de la marca de tiempo. Útil si Pandas no reconoce el formato proporcionado.

monetary_value_col : str, opcionalpython:str, opcional

Columna en el DataFrame de transacciones que denota el valor monetario de la transacción. Opcional; solo se necesita para modelos de estimación de gastos como el modelo Gamma-Gamma.

include_first_transaction : bool, opcionalbool, opcional

Predeterminado: Falso Para el modelado predictivo del CLV, esto debe ser Falso. Establezca en Verdadero si está realizando segmentación RFM.

sort_transactions : bool, opcionalbool, opcional

Predeterminado: Verdadero Si los datos sin procesar ya están ordenados en orden cronológico, establezca en Falso para mejorar la eficiencia computacional.

Devoluciones:
DataFrame

Dataframe que contiene datos RFM resumidos y columnas de prueba para frecuencia, T y valor_monetario si se especifican.