1. 概述
1.1 版本
FineBI 版本 | 功能变动 |
---|---|
5.0 | - |
5.1.21 | 出于系统稳定,行转列的结果若是超过 500 列会被自动打断 |
1.2 应用场景
行列转换是将一维表转换为二维表。
一维表也常称为流水线表格。一般有固定的列名,平常输入数据只需要一行一行的添加即可。
二维表格是一种关系型表格。通常数据区域的值需要通过行列同时确定。
在数据关系上来说,二维表有一个很明显的特征,就是列字段中有一部分是相同性质的字段。而一维表没有任何两个字段是相同性质的。
例如「学生成绩表」中原始数据,这是一张一维表,如下图所示:
转换为二维表后,更符合我们日常的阅读习惯,信息更浓缩,适合展示分析结果。例如将「学生成绩表」中以「姓名」作为根据字段,数据转换为「科目-成绩」列字段,效果如下图所示:
注:行列转换的列转行操作请参考:列转行
1.2 适用范围
只有【抽取数据】的【 基础表】有本文行转列的功能。
2. 行转列示例
2.1 导入数据
1)下载示例数据:学生成绩.xls
2)将数据表「学生成绩」表上传到 FineBI 中,如下图所示:
3)点击「学生成绩」,进行数据预览。这张表是一张一维表,如下图所示:
注:「SQL 数据集」、「数据库表」在添加完成表以后需要进行更新,在更新完成后才能进行后续行列转化处理。
2.2 行列转换
1)对该表进行编辑处理。如下图所示:
2)进入数据表编辑界面,进行字段设置,默认选择全部字段。在左侧字段处理操作流程处点击「+」,选择「行列转换」。如下图所示:
3)进入行列转换设置界面,点击序列号根据字段,选择「姓名」;选择栏次名选择「科目」,默认全选;以及原始指标字段选择「成绩」,自动生成的指标字段为「科目-成绩」。如下图所示:
根据字段识别生成的指标所在列:是指数据表中根据需要转化的字段值重复的字段,该选项可以选择最终显示时需要唯一值的字段;
栏次名:是指需要被转化的行字段名称;
原始指标字段:原始数据表中包含的字段都会出现;
生成的指标字段:是指被转化字段所对应的值字段;
注:在「选择栏次名」下选择字段后默认勾选该字段下全部值。在 SQL 表、数据库表中,若选择的栏次名字段下 数据更新 有新增的字段值,新增字段值默认不勾选。如有需要,可再次进入编辑界面手动重新勾选。
4)最后点击「预览」。如下图所示:
5)点击「保存」,完成行列转换设置。如下图所示:
2.3 效果查看
实现效果请参见本文1.1 节。
3. 注意事项
3.1 系统自动打断结果超过 500 列的行转列
如果进行「行列转换」后,新增的列数多于 500 列,那么这种行转列操作大多数情况下是没有实际意义的,且可能会给系统带来较大压力,导致内存爆炸。
所以系统会自动打断超过 500 列的行列转换操作,并提示:错误代码:61300112检测到行转列的结果超过 500 列,您可能选择了错误的行列转换字段。为了保障系统稳定运行,我们中止了本次行列转换计算,请您重新检查行列转换的字段设置!