数分基础(03-3)客户特征分析-Tableau

文章目录

  • 客户特征分析 - Tableau
    • 1. 说明
    • 2. 思路与步骤
    • 3. 数据准备和导入
      • 3.1 用EXCEL初步检查和处理数据
        • 3.1.1 打开
        • 3.1.2 初步检查
          • (1)缺失值
          • (2)格式化日期字段
          • (3)其他字段数据类型
          • (4)冗余数据检查
          • (5)其他
      • 3.2 导入Tableau
    • 4. 数据探索和准备分析
        • 例如 创建基本的客户视图
        • 例如 在地图上显示销售额
    • 5. 客户特征分析
      • 5.1 新工作表
      • 5.2 基本视图
      • 5.3 启动聚类分析
    • 6. 结束

客户特征分析 - Tableau

1. 说明

数分基础(03-1)客户特征分析,是用Python作为分析工具
对于非技术用户来说,Tableau 直观易上手,可以快速创建图表、即时交互,这里用 Tableau Desktop
这里主要是演示一下如何用Tableau来做分析这件事情的主要过程

关于Tableau的详细操作以及为什么等等,暂时不做解释,需要的可以自行查阅资料
在这里插入图片描述

同时特别提醒
涉及操作,篇幅会长,但有时候很长的一段,操作很简单
非技术同学不要心理上预先觉得麻烦

其实很快的,特别是慢慢熟练了,会发现用可视化工具可以迅速获得对数据集的认识,还是很方便的

千万不要觉得烦,就放弃这个快速工具

2. 思路与步骤

数据准备
初始视图
关键指标
分析可视

3. 数据准备和导入

可以在EXCEL中进行初步检查和处理,例如缺失值、字段类型、异常值、冗余数据等,然后再导入Tableau。

涉及操作,篇幅会长,但有时候很长的一段,操作很简单
非技术同学不要心理上预先觉得麻烦
其实很快的

3.1 用EXCEL初步检查和处理数据

3.1.1 打开

双击EXCEL文件
数据集Global_Superstore同前不变,可在此直接下载 数分基础(01)示例数据集
在这里插入图片描述
在查看中等规模数据时候,EXCEL几个快捷键很好用,见(04)。

数据表任意点选单元格,ctrl + end,移动到工作表中最后一个有数据的单元格,显示“X51291”

数据集包含了51290条记录和24个字段,这和Python首先加载数据集,看看大体数量,字段数目情况一样的。

在这里插入图片描述

3.1.2 初步检查
(1)缺失值

检查
ctrl + home 回数据区左上角
ctrl + 方向键右→ ,快速移动到数据第一行最右列

方法一,辅助列
添加一个新列,用于统计每行的缺失值数量
在新列的第一个单元格中输入公式 =COUNTBLANK(A2:X2)
鼠标移动到写公式的单元格右下角,单元格右下角出现实心小方块,光标变成实心十字架时候,双击实心小方块,将公式应用到所有行
在这里插入图片描述
同时在最后一行 也看下每列的缺失值情况
在这里插入图片描述
这样可以发现 缺失值集中在邮编这一列

方法二,逐列筛选
除了添加辅助列,也可以 Ctrl + shift + L,筛选模式,逐列点击列顶部的筛选箭头,下拉菜单,显示该列中所有可能的值,在下拉菜单的底部,如果有“(空白)”的选项,代表该列存在空白单元格,逐列识别 在这里插入图片描述
处理
如果缺失值不影响分析,则可以忽略,如果需要填补,则是另外一件事情了,本文暂略。

(2)格式化日期字段

对于有日期字段的数据表,需要确保其类型正确
正确的日期格式,可以是的后续在Tableau中,处理时间序列、和日期相关的计算避免混乱

"Order Date"和"Ship Date"列的数据虽然是以日-月-年(DD-MM-YYYY)的格式显示的,但是Excel设置单元格格式为日期却不起作用,设置后仍然貌似为字符文本
在这里插入图片描述
在“Order Date”和“Ship Date”列旁边插入新的空列,用公式强制转换:
新列用于存放转换后的日期

=DATE(VALUE(RIGHT(D2,4)), VALUE(MID(D2,4,2)), VALUE(LEFT(D2,2)))

D2是Order Date第一行日期所在的单元格,根据实际数据修改单元格引用
双击右下角实心小方块自动填充公式,靠拖拉很费滚轮
把所有的文本日期转换为Excel可以识别的日期格式
将新列设置为日期格式,确认新生成的日期已经可以被Excel识别
如果新日期列正确无误,将新列复制并粘贴为值 替换旧列,删除新列,这里粘贴为值非常重要
在这里插入图片描述

如法炮制,对每一个日期格式的列进行如下 5 步:

  1. 设置其为日期格式,但是发现不起作用
  2. 新列获取旧列字符串,公式转换
  3. 新列设为日期格式
  4. 新列复制并粘贴为值 替换旧列【旧列在第一步已设置为日期格式】
  5. 删除新列
(3)其他字段数据类型
  • 数值字段如销售额(Sales)、利润(Profit)、折扣(Discount)和 运费(Shipping Cost)等,在单元格式中设置为数值类型,且分别设置小数位数,规整一下

  • 其余列改设置为文本的设置为文本在这里插入图片描述

(4)冗余数据检查

ctrl + A选择整个数据范围(包括列标题)
点击“数据”菜单,选择“删除重复项”选项。
在这里插入图片描述
在弹出的对话框中,勾选可能导致记录重复的字段(如“订单ID”、“客户ID”等),然后点击“确定”
在这里插入图片描述
Excel将删除完全重复的行并保留一个唯一的记录。

这个数据集,没有重复的行记录
在这里插入图片描述

(5)其他
  • 异常值检测可以暂时不做
  • 清理不必要的空白行或无关字段
  • 检查字段名称,简洁,避免使用特殊字符
  • 表头保持在第一行,没有多余的信息(例如注释)

“Row ID”、“Order ID”、“Order Date”等带有空格的字段名,不会对Tableau的基本功能造成问题,然而未来如果从Tableau导出,或者用其他数据处理工具(如SQL、Python等),空格也许会导致解析错误带来额外处理负担

因此,为提高兼容性和数据处理效率,建议在数据导入前就规范列名:
方法一:使用下划线,例如“Row_ID”、“Order_ID”
方法二:驼峰命名,例如“RowID”、“OrderID”

  • 基本处理完成、格式规范,CTRL + S 保存初步处理好的数据

3.2 导入Tableau

打开Tableau Desktop。
选择“连接到数据”,选择“Excel”作为数据源。
浏览到选择EXCEL文件并加载。
Tableau中数据预览,过一下看看是否正确识别所有列和数据类型(数值、日期、文本等),如有疏漏,修改
在这里插入图片描述
没问题后,左下角,转到工作表1
在这里插入图片描述

4. 数据探索和准备分析

这部分不详细了,需要的可以去找Tableau相关资料,粗略感受和体验一下交互性,以及通过可视化工具更好地理解数据集。

使用“拖放”将不同的字段放到行或列上,尝试不同的组合以查看数据分布和关键趋势。
尝试基本的图表类型,如条形图、线图、散点图等

例如 创建基本的客户视图

将 CustomerID 拖到 行(Rows)列出所有客户
将 Segment 拖到 行
继续将 Segment 拖到 颜色(Color)
按客户类别(如 Consumer、Corporate、Home Office)对客户进行分类
在这里插入图片描述
将 Sales 拖到 列(Columns),显示每个客户的销售额
在这里插入图片描述

例如 在地图上显示销售额

State、City 或 Country 字段被 Tableau 识别为地理角色
右键点击字段(如 State)并选择 “地理角色” > “州/省”,如果是 City 则选择 “城市”,如果是 Country 则选择 “国家/地区”。
如果 Tableau 没有自动识别,可以手动设置地理角色。

将 State(或其他地理字段,如 City、Country)拖动到“列”或“行”。
将 Sales 字段拖动到 大小(Size)框,以根据销售额大小调整地图上的圆点大小。

如果没有出现地图,可以点下图右上角“智能推荐”
在这里插入图片描述
点击后,并选择地图,字段自动调整为下图的布局
在这里插入图片描述
将 Sales 字段拖动到 大小(Size)框,以根据销售额大小调整地图上的圆点大小。
在这里插入图片描述
也可以点击大小图标调整图表中的圆点大小
在这里插入图片描述
将 Sales 字段拖动到 标签(Label)框,以在地图上显示每个区域的具体销售额。
在这里插入图片描述

5. 客户特征分析

来到正事儿,分析识别不同客户群体的特征

5.1 新工作表

在Tableau中新建工作表
在这里插入图片描述

5.2 基本视图

关注这两类字段:
用于聚类的度量字段,例如 Sales Profit Discount
维度字段,例如 CustomerID

初步的散点图
将 CustomerID 拖入 行(Rows)
将 Sales 和 Profit 拖入 列(Columns),创建一个初步的散点图,显示客户的销售额和利润关系。
在这里插入图片描述
可以添加更多度量字段,如 Discount 拖入颜色(Color)以显示折扣率对客户的影响
在这里插入图片描述
这里请注意,鼠标移到某些点上,会显示Discount 为4.57 9.8 ……在这里插入图片描述
这是因为Tableau 默认情况下,数值字段设置为求和(SUM),这会导致折扣显示为累加值(该客户所有购买次数,每次的折扣叠加)

点击这个位置 Discount 字段的下拉小三角,在下拉菜单中选择 “度量”,然后选择 “平均值 (AVG)”
在这里插入图片描述

这样,可以看到平均折扣值大的颜色深,且位于横轴销售额的左边低值区域
在这里插入图片描述

5.3 启动聚类分析

点击左上角“数据”右侧的 “分析” tab
在这里插入图片描述

找到 “聚类”(Cluster) 选项。

将 “聚类” 选项拖拽到你的散点图上,聚类设置窗口会自动弹出,显示当前选定的度量和维度。
在这里插入图片描述

可以在窗口中选对分析有意义的指标
不需要的字段,拖到空白处,不要,或者 右键 “移除”

调整聚类数量
根据业务需求,在框中调整聚类数量。Tableau 通常会提供一个建议的默认值 ,见右上角
可以进行修改,查看不同的分群效果
在这里插入图片描述
如果如图设置为2类,从销售总额和利润总额两个部分(列里面 2 个字段),会直观看到2类群体颜色,销售额或者用户购买总量低的,利润偏低
在这里插入图片描述

如果不小心关了,可以在这里打开对话框
在这里插入图片描述

Tableau 是使用 K-means 算法进行聚类分析的(前面某篇提到过聚类的方法有很多种)

在右侧点选感兴趣的Cluster,直观地区分不同的客户群体
结合业务知识,验证聚类结果的合理性。如果某些群体特征不明显,考虑调整度量的选择或数量
在这里插入图片描述

6. 结束

这里主要是演示一下如何用Tableau可视化聚类的大体情况,过程看着复杂,在前面检查数据阶段需要多点儿时间
实际上,从导入到Tableau,拖拖拽拽非常快的,可以直观迅速看到大体有哪些客户群体,对非技术同学很友好。

具体的客户群体特征分析,见前面Python那篇:数分基础(03-1)客户特征分析

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/412432.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

桥梁在线监测解决方案:科技赋能,守护桥梁安全

在现代社会,桥梁作为连接城市与乡村、跨越河流与峡谷的重要交通设施,其安全性和稳定性直接关系到人民生命财产的安全以及经济社会的正常运转。然而,桥梁在长期使用过程中,会受到自然环境、车辆荷载、材料老化等多种因素的影响&…

8.26-docker创建容器+打包镜像+docker文件的学习

一、回顾 创建容器:docker run -it --name a1 centos:latest /bin/bash 查看容器:docker ps(查看正在up的容器) docker ps -a(查看所有的容器) 切回宿主机:ctrl p q 启动容器:docke…

KEIL Stm32 bin文件生成的两种方法以及报错的处理

Keil里生成bin文件的方法有两种,记录如下,以免忘记~ 首先,在Keil主页面,点击如下按钮,打开Options for Target ‘target 1’对话框,并选择User标签页。 其次,通过在 User标签页 设置 “After B…

react-native框架下,集成字体并应用全局

一、存放字体文件 将自定义字体文件(例如 .ttf 或 .otf 文件)放入项目的 assets/fonts 目录中。如果没有这个目录,可以手动创建。 二、配置字体 在项目根目录下建一个文件:react-native.config.js,文件内容如下&…

等保测评的五大误区与应对策略

等保测评(信息安全等级保护测评)作为确保信息系统安全的重要环节,常常伴随着一些常见的误区,这些误区可能导致组织在实施等保工作时偏离正确方向,增加合规风险。以下是等保测评中的五大常见误区及其应对策略。 一、误区…

zookeeper服务搭建

zookeeper服务搭建 前言1. 前置准备2. 下载和解压Zookeeper3. 配置环境变量4. 编辑Zookeeper配置文件5. 配置Zookeeper节点ID6. 配置好的Zookeeper分发到其他节点7. 启动Zookeeper集群参考博客 前言 Zookeeper是一个开源的分布式协调服务,主要用于解决分布式应用中的…

Leetcode面试经典150题-82.删除排序链表中的重复元素II前序-83.删除排序链表中的重复元素

解法都在代码里,不懂就留言或者私信,比第一题稍微难点 题目比较简单,真实面试中82和83都出现过,83偏多,先有个基础,马上分析82 /*** Definition for singly-linked list.* public class ListNode {* …

视频智能分析厨帽检测算法,厨帽检测算法全套源码、样本和模型展示

厨帽检测算法是一种基于人工智能和计算机视觉技术的系统,旨在自动检测厨师是否佩戴了符合规范的厨帽。该算法通过分析视频流或图像数据,实时识别厨帽的佩戴情况,从而帮助餐饮企业确保员工的着装符合卫生标准。这一技术广泛应用于餐馆、厨房、…

19050 牛牛打气球

### 思路 1. **输入读取**: - 读取 n,a 和 b。 - 读取每个气球的坚韧度。 2. **计算最少释放次数**: - 使用二分查找来确定最少的释放次数。 - 每次释放武器时,选择一个气球多承受 a 点伤害,其他气球承受…

春秋云镜initial

场景介绍 场景地址:仿真场景-专业徽章 (ichunqiu.com) 靶标介绍: Initial是一套难度为简单的靶场环境,完成该挑战可以帮助玩家初步认识内网渗透的简单流程。该靶场只有一个flag,各部分位于不同的机器上。 网络拓扑:&…

WebSocket通信学习笔记

1 简介 WebSocket是一种全双工通信协议,它允许客户端和服务器之间建立持久化的双向连接,从而在不频繁创建HTTP请求的情况下进行实时数据传输。与传统的HTTP协议相比,WebSocket更适合需要实时数据更新的应用场景,如聊天应用、实时…

【Kafka】Windows下安装Kafka(全面)

目录 1.前提条件 2.下载 3.安装 4.环境变量配置 5.验证 1.前提条件 1.先安装zookeeper: 【Zookeeper】Windows下安装Zookeeper(全面)-CSDN博客https://blog.csdn.net/weixin_57259781/article/details/141679454 2.还需要安装scala: …

虚幻5|技能栏UI优化(2)——优化技能UI并实现技能栏的拖拽操作

这篇文章里,前情提要,文章里的序列变量应命名为序号,我命名错了,虽然不差,但为了后面更好的理解 一.刷新技能栏,用于刷新上一章文章的初始化技能栏 1.打开技能栏格子,打开图表,添加…

【数学建模学习手册】python基本入门使用

本专栏内容为:数学建模原理 记录学习数学建模 💓博主csdn个人主页:小小unicorn ⏩专栏分类:数学建模 🚚代码仓库:小小unicorn的代码仓库🚚 🌹🌹🌹关注我带你学…

Cycle inside Runner; building could produce unreliable results.

报错 Showing Recent Messages Cycle inside Runner; building could produce unreliable results. Cycle details: → Target Runner ○ That command depends on command in Target Runner: script phase “Thin Binary” ○ Target Runner has process command with outpu…

Oracle taf高级特性使用

0、taf介绍 TAF是Oracle数据库提供的一个高级特性,旨在实现应用程序在数据库连接中断时的透明重连。它允许应用程序在数据库故障发生时,无需修改代码或手动干预,就能自动连接到新的数据库实例,保证了事务的连续性和应用的高可用性…

Python编码—掌握Python与Kubernetes:构建高效微服务架构

🌟🌟 欢迎来到我的技术小筑,一个专为技术探索者打造的交流空间。在这里,我们不仅分享代码的智慧,还探讨技术的深度与广度。无论您是资深开发者还是技术新手,这里都有一片属于您的天空。让我们在知识的海洋中…

开源搜索引擎之Solr

Apache Solr 是一个开源的企业级搜索平台,构建在 Apache Lucene 之上,提供了强大的全文搜索、实时索引和分布式搜索能力。Solr 被广泛用于构建高性能的搜索应用程序,支持从简单的搜索引擎到复杂的数据分析平台等多种场景。以下是对 Apache So…

Linux学习笔记(4)----Debian压力测试方法

使用命令行终端压力测试需要两个实用工具:s-tui和stress sudo apt install s-tui stress 安装完成后,在终端中启动 s-tui实用工具: s-tui 执行后如下图: 你可以使用鼠标或键盘箭头键浏览菜单,然后点击“压力选项(Str…

类在JVM中的工作原理

文章目录 引言I 类在JVM中的工作原理class文件的结构类的生命周期II JVM运行时数据区堆栈的意义栈帧内部结构堆III 在JIT中比较常见的优化手段引言 类是一种抽象概念,它是一种模板,用来定义一类事物的属性和行为。类是面向对象编程的基础,它是一种抽象的概念,代表一类事物…