Python ialah bahasa pengaturcaraan serba boleh yang popular dalam bidang analisis data dan pembelajaran mesin. Kesederhanaan, kebolehbacaan dan perpustakaan yang kaya menjadikannya ideal untuk mengendalikan tugas data yang kompleks. Satu aplikasi yang begitu hebat ialah analisis RFM, teknik yang digunakan dalam pemasaran untuk membahagikan pelanggan berdasarkan gelagat pembelian mereka.
Dalam tutorial ini, kami akan membimbing anda melalui proses melaksanakan analisis RFM menggunakan Python. Kami akan mulakan dengan menerangkan konsep analisis RFM dan kepentingannya dalam pemasaran. Kami kemudiannya akan secara beransur-ansur menyelami aspek praktikal analisis RFM menggunakan Python. Dalam bahagian seterusnya artikel, kami akan menunjukkan cara mengira skor RFM untuk setiap pelanggan menggunakan Python, dengan mengambil kira cara yang berbeza untuk menetapkan skor untuk keterkinian, kekerapan dan nilai kewangan.
Analisis RFM ialah teknik berkuasa yang digunakan dalam pemasaran untuk membahagikan pelanggan berdasarkan gelagat pembelian mereka. Akronim RFM adalah singkatan kepada Recency, Frequency and Monetary value, tiga faktor utama yang digunakan untuk menilai dan mengklasifikasikan pelanggan. Mari kita pecahkan setiap komponen untuk memahami kepentingannya dalam analisis RFM.
Recency: Recency merujuk kepada masa yang telah berlalu sejak pembelian terakhir pelanggan. Ini membantu kami memahami cara pelanggan berinteraksi dengan perniagaan baru-baru ini.
Kekerapan: Kekerapan merujuk kepada bilangan kali pelanggan membuat pembelian dalam jangka masa tertentu. Ia membantu kami memahami kekerapan pelanggan kami berinteraksi dengan perniagaan kami.
Nilai Monetari: Nilai kewangan merujuk kepada jumlah amaun yang dibelanjakan oleh pelanggan untuk pembelian. Ia membantu kami memahami nilai transaksi pelanggan dan potensi nilainya kepada perniagaan.
Sekarang kita memahami analisis RFM, mari kita pelajari cara melaksanakannya dalam Python dalam bahagian seterusnya artikel ini.
Untuk melakukan analisis RFM menggunakan Python, kami akan bergantung pada dua perpustakaan asas: Pandas dan NumPy. Untuk memasang NumPy dan Pandas pada komputer anda, kami akan menggunakan pip (pengurus pakej Python). Buka terminal atau command prompt anda dan jalankan arahan berikut:
pip install pandas pip install numpy
Setelah pemasangan selesai, kami boleh terus melaksanakan analisis RFM menggunakan Python.
Pertama, mari import perpustakaan yang diperlukan ke dalam skrip Python kami:
import pandas as pd import numpy as np
Seterusnya, kita perlu memuatkan dan menyediakan data untuk analisis RFM. Katakan kita mempunyai set data yang dipanggil `customer_data.csv` yang mengandungi maklumat tentang transaksi pelanggan, termasuk ID pelanggan, tarikh transaksi dan jumlah pembelian. Kita boleh menggunakan Panda untuk membaca data ke dalam DataFrame dan memprosesnya terlebih dahulu untuk analisis.
# Load the data from the CSV file df = pd.read_csv('customer_data.csv') # Convert the transaction date column to datetime format df['transaction_date'] = pd.to_datetime(df['transaction_date'])
Sekarang, mari kita bergerak ke hadapan dan mengira metrik RFM untuk setiap pelanggan. Dengan menggunakan satu siri fungsi dan operasi, kami akan menentukan skor untuk masa pembelian baru-baru ini, kekerapan pembelian dan jumlah pembelian.
# Calculate recency by subtracting the latest transaction date from each customer's transaction date df['recency'] = pd.to_datetime('2023-06-02') - df['transaction_date'] # Calculate frequency by counting the number of transactions for each customer df_frequency = df.groupby('customer_id').agg({'transaction_id': 'nunique'}) df_frequency = df_frequency.rename(columns={'transaction_id': 'frequency'}) # Calculate monetary value by summing the purchase amounts for each customer df_monetary = df.groupby('customer_id').agg({'purchase_amount': 'sum'}) df_monetary = df_monetary.rename(columns={'purchase_amount': 'monetary_value'})
Dalam langkah ini, kami akan menetapkan markah untuk metrik kebaruan, kekerapan dan nilai kewangan, membolehkan kami menilai dan mengklasifikasikan pelanggan berdasarkan gelagat pembelian mereka. Adalah penting untuk ambil perhatian bahawa anda boleh menyesuaikan kriteria pemarkahan berdasarkan keperluan unik projek anda.
# Define score ranges and assign scores to recency, frequency, and monetary value recency_scores = pd.qcut(df['recency'].dt.days, q=5, labels=False) frequency_scores = pd.qcut(df_frequency['frequency'], q=5, labels=False) monetary_scores = pd.qcut(df_monetary['monetary_value'], q=5, labels=False) # Assign the calculated scores to the DataFrame df['recency_score'] = recency_scores df_frequency['frequency_score'] = frequency_scores df_monetary['monetary_score'] = monetary_scores
Akhir sekali, kami akan menggabungkan skor RFM individu setiap pelanggan menjadi satu skor RFM.
# Combine the RFM scores into a single RFM score df['RFM_score'] = df['recency_score'].astype(str) + df_frequency['frequency_score'].astype(str) + df_monetary['monetary_score'].astype(str) # print data print(df)
Apabila anda melaksanakan kod yang disediakan di atas untuk mengira skor RFM menggunakan Python, anda akan melihat output berikut:
customer_id transaction_date purchase_amount recency recency_score frequency_score monetary_score RFM_score 0 1234567 2023-01-15 50.0 138 days 3 1 2 312 1 2345678 2023-02-01 80.0 121 days 3 2 3 323 2 3456789 2023-03-10 120.0 84 days 4 3 4 434 3 4567890 2023-05-05 70.0 28 days 5 4 3 543 4 5678901 2023-05-20 100.0 13 days 5 5 4 554
Seperti yang anda lihat daripada output di atas, ia menunjukkan data untuk setiap pelanggan, termasuk id_pelanggan unik mereka, tarikh_urusniaga dan jumlah_pembelian. Lajur kebaharuan mewakili kebaharuan dalam hari. Lajur skor_kebaruan, skor_kerapan dan skor_kewangan menunjukkan skor peruntukan untuk setiap metrik.
Akhir sekali, lajur RFM_score menggabungkan skor individu untuk keterkinian, kekerapan dan nilai kewangan ke dalam satu skor RFM. Skor ini boleh digunakan untuk membahagikan pelanggan dan memahami tingkah laku dan pilihan mereka.
Itu sahaja! Anda telah berjaya mengira skor RFM setiap pelanggan menggunakan Python.
Kesimpulannya, analisis RFM adalah teknik yang sangat berguna dalam pemasaran, yang membolehkan kami membahagikan pelanggan berdasarkan gelagat pembelian mereka. Dalam tutorial ini, kami meneroka konsep analisis RFM dan kepentingannya dalam pemasaran. Kami menyediakan panduan langkah demi langkah untuk melaksanakan analisis RFM menggunakan Python. Kami memperkenalkan perpustakaan Python yang diperlukan seperti Pandas dan NumPy, dan menunjukkan cara mengira skor RFM untuk setiap pelanggan. Kami menyediakan contoh dan penjelasan untuk setiap langkah proses, menjadikannya mudah untuk diikuti.
Atas ialah kandungan terperinci Analisis RFM menggunakan Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!