📅  最后修改于: 2023-12-03 14:52:17.244000             🧑  作者: Mango
在数据分析方面,经常会遇到需要将数据从宽格式转换为长格式的情况。通俗地说,就是将一行中的多个变量转换为多行,每行只包含一个变量的值。这种数据格式更加利于后续的分析和可视化处理。
例如,下图所示的宽格式表格:
| 姓名 | 语文 | 数学 | 英语 | | ---- | ---- | ---- | ---- | | 张三 | 80 | 90 | 85 | | 李四 | 70 | 85 | 80 | | 王五 | 90 | 95 | 90 |
将其转换为长格式表格如下:
| 姓名 | 科目 | 分数 | | ---- | ---- | ---- | | 张三 | 语文 | 80 | | 张三 | 数学 | 90 | | 张三 | 英语 | 85 | | 李四 | 语文 | 70 | | 李四 | 数学 | 85 | | 李四 | 英语 | 80 | | 王五 | 语文 | 90 | | 王五 | 数学 | 95 | | 王五 | 英语 | 90 |
本文将介绍如何在 Excel 中实现宽格式数据的转换。
在 Excel 中,可以使用“数据透视表”或“公式”实现宽格式数据的转换。
在新的工作表中,输入下列列名:
| 姓名 | 科目 | 分数 |
将“姓名”列的第一行填充为数据源表格中的姓名列表;
将“科目”列的第一行填充为数据源表格中的科目列表;
使用公式将分数填充到分数列中。例如,在第二行分数单元格中输入以下公式,然后按回车键:
=INDEX($B$2:$D$4,MATCH($F2,$A$2:$A$4,0),MATCH(G$1,$B$1:$D$1,0))
其中,“$B$2:$D$4”是数据源表格的范围,“$F2”是当前行的姓名单元格,“G$1”是当前列的科目单元格。
拖动公式填充某一列或某一行的所有单元格,直到完整填充分数列。
本文介绍了两种将 Excel 中宽格式数据转换为长格式数据的方法:使用数据透视表和使用公式。这两种方法各有优缺点,可以根据实际情况选取。在数据分析和可视化处理方面,长格式数据更加利于数据处理和分析。