我计划通过基于 Java 的 SPMF 工具进行“高效能项目集挖掘”。但问题是在将数据加载到 SPMF 之前将数据转换为正确的格式。

我目前的格式:

 Transaction #  Item    Amount

        1001    200 14
        1001    201 13
        1001    202 16
        1001    205 17
        1002    300 11
        1002    305 12
        1002    200 30

期望输出:(不需要交易号,每笔交易为一行)
200 201 202 205:60:14 13 16 17
300 305 200:53:11 12 30

所需输出的说明:
200 201 202 205 --->   are Items (left of 1st row)
14 13 16 17      --->  are Amount (right of first row)
:60:          ---->    is total amount of transaction # 1001 (14+13+16+17)

我对任何解决方案持开放态度。如果我得到正确的查询来实现我的输出,我可以将我当前的格式加载到 SQL 中并通过 SQL 查询提取数据。
请帮忙。

最佳答案

使用 by 例如:

by(dx,dx$Transaction,function(x)c(x$Item,sum(x$Amount),x$Amount))

dx$Transaction: 1001
[1] 200 201 202 205  60  14  13  16  17
-------------------------------------------------------------------------------
dx$Transaction: 1002
[1] 300 305 200  53  11  12  30

关于sql-server - 将数据从列转置为行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29314385/

10-15 02:34