【发布时间】:2021-08-02 11:08:37
【问题描述】:
我有一个基于英超联赛结果通过 PROC SQL 在 SAS 中创建的数据集,需要将列 Result 转换为多个单独的列,同时将每个 Team 分组为一行。目前我的桌子看起来像:
| Team | Result |
|---|---|
| Arsenal | D |
| Arsenal | L |
| Arsenal | D |
| Arsenal | W |
| Chelsea | L |
| Chelsea | D |
我正试图让它看起来像:
| Team | Form | |||
|---|---|---|---|---|
| Arsenal | D | L | D | W |
| Chelsea | L | D | W | W |
| Tottenham | D | W | L | W |
| Arsenal | W | W | L | L |
以上只是简短的示例,即表格包含过去 6 周内每支英超球队的状态。
谢谢!
【问题讨论】:
-
SQL 表代表 无序 集。您的重新排列看起来取决于行的某些顺序,因此无法完成。令人高兴的是,SAS 数据集是有序的,因此您可以使用
data step或proc来执行此操作。 -
@GordonLinoff 感谢 Gordon - 我非常感谢您的快速回复!正如你提到的,我设法使用 PROC TRANSPOSE 解决了这个问题。