加载脚本
将示例脚本添加到应用程序并运行。要查看结果,将结果列中列出的字段添加到应用程序中的工作表。
tmpData: //Crosstable (MonthText, Sales) Load * inline [ Product, Jan 2021, Feb 2021, Mar 2021, Apr 2021, May 2021, Jun 2021 A, 100, 98, 103, 63, 108, 82 B, 284, 279, 297, 305, 294, 292 C, 50, 53, 50, 54, 49, 51]; //Final: //Load Product, //Date(Date#(MonthText,'MMM YYYY'),'MMM YYYY') as Month, //Sales //Resident tmpData; //Drop Table tmpData;
有关使用内联加载的详细信息,请参见内联加载。
结果
结果表
产品 |
Jan 2021 |
Feb 2021 |
Mar 2021 |
Apr 2021 |
2021 年 5 月 |
Jun 2021 |
A |
100 |
98 |
103 |
63 |
108 |
82 |
B |
284 |
279 |
297 |
305 |
294 |
292 |
C |
50 |
53 |
50 |
54 |
49 |
51 |
解释
这个例子展示了一个交叉表,每个月一列,每个产品一行。按照目前的格式,该数据不容易分析。最好将所有数字放在一个字段中,将所有月份放在另一个字段中,也就是说,放在一个三列表格中。接下来,让我们看看如何对交叉表进行这样的转换。
转换交叉表
取消对脚本的注释并运行它。
tmpData: Crosstable (MonthText, Sales) Load * inline [ Product, Jan 2021, Feb 2021, Mar 2021, Apr 2021, May 2021, Jun 2021 A, 100, 98, 103, 63, 108, 82 B, 284, 279, 297, 305, 294, 292 C, 50, 53, 50, 54, 49, 51]; Final: Load Product, Date(Date#(MonthText,'MMM YYYY'),'MMM YYYY') as Month, Sales Resident tmpData; Drop Table tmpData;
有关使用内联加载的详细信息,请参见内联加载。
结果
结果表
产品 |
月 |
销售额值 |
A |
Jan 2021 |
100 |
A |
Feb 2021 |
98 |
A |
Mar 2021 |
103 |
A |
Apr 2021 |
63 |
A |
May 2021 |
108 |
A |
Jun 2021 |
82 |
B |
Jan 2021 |
284 |
B |
Feb 2021 |
279 |
B |
Mar 2021 |
297 |
B |
Apr 2021 |
305 |
B |
May 2021 |
294 |
B |
Jun 2021 |
292 |
C |
Jan 2021 |
50 |
C |
Feb 2021 |
53 |
C |
Mar 2021 |
50 |
C |
Apr 2021 |
54 |
C |
May 2021 |
49 |
C |
Jun 2021 |
51 |
解释
交叉表被转换成一个垂直表,其中一列用于月份,另一列用于销售额值。