1. 概述编辑
1.1 预期效果
行列转换是将一维表转换为二维表。
一维表也常称为流水线表格。一般有固定的列名,平常输入数据只需要一行一行的添加即可。
二维表格是一种关系型表格。通常数据区域的值需要通过行列同时确定。
在数据关系上来说,二维表有一个很明显的特征,就是列字段中有一部分是相同性质的字段。而一维表没有任何两个字段是相同性质的。
例如学生成绩表中原始数据,这是一张一维表,如下图所示:
转换为二维表后,更符合我们日常的阅读习惯,信息更浓缩,适合展示分析结果。例如将学生成绩表中以姓名作为根据字段,数据转换为科目-成绩列字段,效果如下图所示:
1.2 实现思路
通过将数据表中的行转换成列或者列换换成行实现数据规范化,简单来说就是将转换前数据表中某个字段的所有值取出来,配以某个指标字段,成为新表的列名实现行列转换。例如,将学生成绩表中科目字段值取出,配以成绩指标,成为新表列名(学科-成绩)。
注:行列转换的列转行操作请参考 行列转换之列转行 。
1.3 适用范围
只有 基础表 有行列转换的功能,自助数据集无该功能。
数据下载:学生成绩.xls
2. 行转列示例编辑
2.1 导入数据
1)添加数据表,将数据表学生成绩表添加到 FineBI 的业务包中,如下图所示:
2)点击学生成绩,进行数据预览。如下图所示:注: SQL 表、数据库表在添加完成表以后需要进行数据更新操作,在更新完成后才能进行后续行列转化处理。
2.2 行列转换
1)点击学生成绩表右侧的...,选择编辑按钮,对该表进行编辑处理。如下图所示:
2)进入数据表编辑界面,进行字段设置,默认选择全部字段。在左侧字段处理操作流程处点击+,选择行列转换。如下图所示:
3)进入行列转换设置界面,点击序列号根据字段,选择姓名;选择栏次名科目,默认全选;以及原始指标字段选择成绩,自动生成的指标字段为科目-成绩。如下图所示:
根据字段识别生成的指标所在列:是指数据表中根据需要转化的字段值重复的字段,该选项可以选择最终显示时需要唯一值的字段;
栏次名:是指需要被转化的行字段名称;
原始指标字段:原始数据表中包含的字段都会出现;
生成的指标字段:是指被转化字段所对应的值字段;
注:在选择栏次名下选择字段后默认勾选该字段下全部值。在 SQL 表、数据库表中,若选择的栏次名字段下 数据更新 有新增的字段值,新增字段值默认不勾选。如有需要,可再次进入编辑界面手动重新勾选。
4)最后点击预览可以查看数据预览。如下图所示:
5)点击保存,完成行列转换设置。如下图所示:
2.3 效果查看
实现效果请参见本文1.1 节。