/install customer-segment-eng
Customer Segmentation Skill
Financial customer segmentation analysis: Stratify customers based on assets, transaction behaviors, activity levels, and other dimensions, outputting actionable segmentation results and visualizations.
Workflow
Step 1 — Data Loading and Cleaning
Read user-uploaded CSV or Excel files, automatically identifying column names.
Priority fields to retain:
customer_id/客户ID— Unique customer identifierage/年龄gender/性别balance/资产余额txn_amount/交易金额txn_count/交易次数last_date/最近交易日期product_count/持有产品数branch/网点
Missing value handling:
- Numeric: Fill with median
- Categorical: Fill with mode
- Columns with >30% missing: Delete and notify user
import pandas as pd
df = pd.read_csv(file_path)
df.columns = df.columns.str.strip().str.lower()
Step 2 — Feature Engineering
Build RFM + extended features:
| Feature | Description |
|---|---|
| Recency | Days since last transaction (smaller = more active) |
| Frequency | Transaction frequency (number of transactions in specified period) |
| Monetary | Transaction amount (total amount in specified period) |
| Tenure | Customer duration (months) |
| Product_Depth | Number of products held |
| Age | Customer age |
Data standardization: Use StandardScaler (Z-score) to normalize all numeric features.
Step 3 — Clustering Analysis
Use K-Means algorithm, automatically determine K value (Elbow Method, SSE inflection point).
from sklearn.cluster import KMeans
from sklearn.preprocessing import StandardScaler
scaler = StandardScaler()
X_scaled = scaler.fit_transform(features)
# Elbow method to find optimal K
sse = {}
for k in range(2, 10):
km = KMeans(n_clusters=k, random_state=42, n_init=10)
km.fit(X_scaled)
sse[k] = km.inertia_
optimal_k = min(sse, key=sse.get) # Simply take k with minimum SSE
K=5 can also be fixed based on business needs (high/medium-high/medium/medium-low/low value customers).
Step 4 — Segment Profiling
Output core statistics for each cluster:
Cluster 0 (High-Value Customers): Avg. assets 850k, Avg. transaction frequency 28/month, Gender distribution 62% male
Cluster 1 (Potential Customers): Avg. assets 320k,明显 younger trend
...
Recommended label system (five categories):
- 🌟 High-Value Customers (VIP)
- ⬆️ Potential Customers
- 🟢 Stable Customers
- 🔄 Active Transaction Customers
- ⚠️ Dormant/Churn Warning Customers
Step 5 — Visualization
Generate the following charts (saved as PNG):
- Customer Asset Distribution Histogram — Asset distribution comparison across levels
- Radar Chart — Feature comparison across segments
- Heatmap — Cluster feature mean matrix
- Scatter Plot — Customer distribution with assets × transaction frequency as coordinates
import matplotlib.pyplot as plt
import matplotlib
matplotlib.use('Agg')
plt.rcParams['font.sans-serif'] = ['WenQuanYi Micro Hei', 'SimHei']
fig, axes = plt.subplots(1, 2, figsize=(14, 5))
# Asset distribution
axes[0].hist([g['balance'] for _, g in df.groupby('cluster')], bins=30, label=[f'C{i}' for i in range(k)])
axes[0].set_title('Customer Balance Distribution by Cluster')
# Heatmap
import seaborn as sns
sns.heatmap(cluster_means.T, annot=True, fmt='.1f', ax=axes[1])
axes[1].set_title('Cluster Feature Heatmap')
plt.tight_layout()
plt.savefig(output_path, dpi=150)
Step 6 — Output Results
Output content:
- Segmentation result table (including customer ID, cluster, segmentation label) →
segmentation_results.csv - Cluster feature statistics →
cluster_summary.csv - Visualization charts →
segmentation_charts.png - Analysis summary (Markdown format) →
segmentation_report.md
For detailed clustering and parameter documentation:
- RFM model explanation: Refer to
references/rfm-guide.md - Clustering parameter explanation: Refer to
references/clustering-guide.md
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install customer-segment-eng - 安装完成后,直接呼叫该 Skill 的名称或使用
/customer-segment-eng触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
customer-segment-eng 是什么?
Analyze uploaded bank customer data to segment and profile customers by assets, transactions, and behavior, outputting clusters, statistics, and visual charts. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 93 次。
如何安装 customer-segment-eng?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install customer-segment-eng」即可一键安装,无需额外配置。
customer-segment-eng 是免费的吗?
是的,customer-segment-eng 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
customer-segment-eng 支持哪些平台?
customer-segment-eng 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 customer-segment-eng?
由 yukirang(@yukirang)开发并维护,当前版本 v1.0.0。