数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

2023-05-30 0 928

Matrix 是多数派的诗歌创作街道社区,他们提倡撷取真实世界的产品新体验,有商业价值的实战经验与思索。他们会定期挑选出 Matrix 最高质量的该文,展现源自使用者的最真实世界的新体验和看法。

该文代表译者对个人见解,多数派仅对标题和排印略加修正。

在那个大统计数据黄金时代,他们每一人的组织工作,都多多少少要跟统计数据关系密切。小到历史记录自己的账单,大到用统计数据远距企业战略部署。用好统计数据,可以协助你所处的项目组,和你对个人产品服务。

有用的统计数据,很多都储存在了各式各样统计资料库里头。想使用好它,只会用 Excel 或是 Access 是不如的。一般而言,查阅它的最合适方式,是专业委员会各式各样查阅词汇。最常用的,就是 SQL。

在知名的 Python 专业课程 Programming for Everybody 里头,开讲副教授宾夕法尼亚理工学院的 Chuck (Dr. Charles Severance) 认为,SQL 词汇是C词汇中最简单的一种

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

但是,他们还是现实生活一点。

很多时候,你有预测统计数据的贪婪,不过绝非天下人都有时间和意向去学两门 SQL 专业课程,来完成日常生活组织工作中的统计数据查阅、预测和建模组织工作。

远距工具

好在,技术的发展,常常把很多原本从业者就可以做的事,变为德国大众都能做的。例如本代电动汽车,比如智能手机上的照相机应用领域,再比如我那时要给你如是说的 Metabase。

Metabase 的 Slogan ,是那个模样的:

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

翻译过来,重点就是:

所有人都能用

可以容易表达你的问题

使你能从统计数据中学习

安装

他们来尝试一下 Metabase 这款远距工具,它完全可以适用于项目组协作,因为它提供了 Docker 镜像、AWS 和 Heroku 等方便的云端使用方式。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

为了如是说的简单与方便,这里我只给你如是说一下单机版的安装。其余的应用领域形式,你可以学习本文之后,自己继续挖掘。

因为我自己使用的是 macOS ,所以这里选择 Mac 下面编译好的安装文件就行。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

如果你使用的是其他系统,比如 Linux 或是 Windows ,安装也不麻烦。只需要点击「其他平台」按钮,下载一个 jar 类型文件。只要你在系统里头安装好 Java 运行环境,就可以直接双击该文件运行了。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

这里以我电脑上的 macOS 系统为例。打开下载的 dmg 文件后,把可执行文件拖入到「应用领域」文件夹,就可以了。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

第一次运行的时候,可能需要一些时间初始化。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

当出现以下界面的时候,就意味着准备就绪了。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

请你点击上图里头的蓝色按钮,开始设置。

他们需要输入一些基本注册信息。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

之后,选择他们需要连接的统计资料库。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

注意,这里有很多选项可以选择。这些选项,基本上涵盖了市面上常用的主流统计资料库类型。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

为了方便起见,这里他们使用「麻雀虽小五脏俱全」的 SQLite 统计资料库。其他类型的统计资料库,你可以稍后自己尝试。

我用的样例,是 Stanford 统计资料库开放专业课程使用的 colleges.db 。我自己上课的时候,一直用它作为基础样例演示给学生。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

设置完毕之后,下面需要注意,有个统计数据统计选项。 Metabase 是在询问你,是否允许把你的使用行为统计信息发给它,协助改进。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

如果你乐于撷取,可以保持原本设定。若对自己的隐私比较注重,不用纠结了,可以关闭该选项。到这里,安装和设置就算完成了。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

浏览

下面他们看看有哪些统计数据表可以查看。

那个统计资料库里头包含了 3 张表格,分别是:

Student 学生信息

Apply 申请信息

College 招生学校信息

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

他们选择其中的学生表格。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

Metabase 默认给了他们一些基本的描述性统计结果。比如最重要的,是一张表格到底有多少行。这里样例 Student 表里,一共有 12 个学生的历史记录。还没完,往下翻, Metabase 还为他们自动生成了一些其他统计结果。

首先是学生的学号分布。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

当然,由于学号无非是个独特数字而已,所以那个统计没有什么用处。但下面这张,就不一样了。这是学生的 GPA 分布,可见,大部分学生的成绩高于 3.6 分。统计数据集不是个均匀或是正态分布。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

下面这张图,反映了学生源自的高中学校大小。看得出来,大部分学生还是源自于学生人数较多的学校。源自小而精的高中学生人数,相对较少。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

下面这张图,统计了学生姓名。有意思的是,你可以清楚看到,有重名的学生。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

如果你不满足于只看这些统计信息,而希望查看原始统计数据。那么可以点击「Browse Data」按钮,选择 college 统计资料库。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

然后选择其中的 Student 表格,就能看到全部学生历史记录信息。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

预测

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

这里,所有的条件,都可以通过选择和输入数值来完成,不需要编程。他们选择过滤结果只保留 GPA 大于 3.5 的学生。下图左侧就是他们想看的结果了。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

但是他们会觉得,「一幅图胜似千言万语」。怎么办呢?他们选择右下方,以 GPA 作为分组依据,然后点击左下方的 Visualization (建模)按钮。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

可见,在成绩大于 3.5 的学生里头,有 4 个是 3.9 分的成绩。这部分学生里头,学霸占的比例不小啊。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

他们还可以换一种分组方式,这里他们使用高中学校人数作为分组依据。然后再次进行建模。于是你可以看到,GPA 3.5 分以上的学生,源自于人数规模 1000 的高中最多。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

点击建模按钮,他们可以选择不同的图形来表示。这里他们选择饼图。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

你觉得在那个问题里,柱状图和饼图,哪个更适合描述咱们的过滤预测结果呢?

地图

下面他们来看看,如何对统计数据进行地理信息建模。也就是,画个地图出来。这里,他们选用的,是其中 College 这张表格。这张表格里头,包含以下信息:

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

他们打算看看,不同州理工学院的录取人数。做法很简单,还是点击上图中显示的 Visualization ,然后选择图形选项最右下方的「地图」(Map)。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

修正 Metric field 为 Enrollment 。然后 Region Field 为 State (州)。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

于是你就能看见下面这样的地图了。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

有意思的是,Metabase 对于州的简写方式也能正确识别,并且把它标记在地图上。而且根据汇总招生人数的多寡,还自动选择了不同深浅的颜色。

关联

下面他们来看看更实用的预测手段 — 关联查阅。

从一张表里,他们已经可以预测出不少东西了。但是更多情况下,他们希望采用多张表格联合在一起,从而能从中挖掘出洞见(Insights)。

比如这里我给你提一个问题:

不同理工学院录取最低 GPA 是多少?

那个问题,你若是只用一张表,是无非回答的。因为 Apply 表里头虽然有录取决策信息,但是不包含 GPA;

Student 表里头虽然包括了 GPA,但你不知道学生报了哪所学校,以及是否被录取了。

让他们点击上方菜单栏里头的「问问题」(Ask a question)按钮,然后从下图中选择「定制问题」(Custom Question)。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

然后,你需要选择统计资料库。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

还得选择一个初始的表格。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

他们选择 Student 表。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

然后选择 Join data (关联统计数据)。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

这里他们需要选择 Apply 表格。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

然后会让他们选择用哪个列进行关联。毕竟,如果我们把张三的学生信息关联到李四的录取信息历史记录上,是没有意义的。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

他们观察一下,发现在 Student 和 Apply 中,都出现了学生的 ID (sID),这是学生的唯一标识。就用它好了。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

下面他们设置一下过滤条件。显然,既然考虑录取分数,那么就得找出那些被录取的人。

于是他们在 Filter 一栏里头点击。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

选择 Apply 表格。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

然后从中选择 Decision (录取决策)。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

因为这里只有两种取值选择。所以他们可以选择 Y (录取)。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

然后他们就可以根据学校来查看最低录取分数了。这里他们填写绿色的 Summarize 。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

他们感兴趣的是最低录取分数,所以可以从中选择 Minimum of 。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

然后选择 GPA 作为最小值选择列。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

还没完。因为他们是需要按照学校来分别计算的。所以在 by 后面选择 cName 。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

通过简单的点选,你现在已经有了所有需要设置的信息。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

好,他们执行吧。选择 Visualize 。

数据可视化工具 Metabase:不会写 SQL 代码也能做数据分析

从这张图里,他们可以看到,Berkeley 录取学生的 GPA 线最高。 Cornell 和 Stanford 并列最低。由此看来,名校看重的,绝不仅仅是 GPA 成绩啊。是吗?那个作为思索题,欢迎你把自己的答案写在留言区里头和大家交流。

小结

本文我带你用一个极简的统计资料库样例,尝试了不写任何一句 SQL 标识符,对统计资料库进行过滤、预测、统计、建模,以及表间关联查阅。

你可能会觉得,这么简单的统计数据,我拿眼看心算,都比你这方法快!

没错,但是想象一下,如果你的每张表里头,统计数据量都多上 1000 倍呢?

他们要学东西,就需要掌握这种能规模化应用领域的技能。虽然初始学习的时候觉得有些繁琐,但是真正帮你应对大规模统计数据结果的时候,你就能尝到掌握它的甜头了。

祝统计数据挖掘愉快!

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务