【发布时间】:2017-03-14 01:34:48
【问题描述】:
我有一个带有贷款 ID 的来源数据集。然后,我有一个相应的数据集,其中包含每个贷款 ID 的性能数据,它可以是性能数据集中的 10-40 行。
每个绩效贷款的开始日期也不相同,尽管有些确实重叠。我想要做的是获取性能数据集中的每个贷款 id 组,然后在数据集中的所有事件中创建一个特定列值的行。它们是否从不同的日期开始并不重要,我只想对齐这些值,因为这是贷款 id x 和 y 的第一个值。
例如:
身份证日期值
3 201601 100
3 201602 102
3 201603 103
--> 结果:
ID 值 1 值 2 值 3
3 100 102 103
我有两个问题。一是每个 id 的性能数据大小不同。我无法构造具有不同行长的矩阵。我假设我需要在每行的末尾附加 0 以满足预定义的宽度。
我的第二个问题是,我不确定如何读取绩效数据集以对贷款进行分组、提取值列、将该列构造为该 id 的行,然后插入到矩阵中。我知道如何在 Python 中做到这一点,但我需要使用 SAS。我可以在 SAS 中构建表,但我不知道如何追加行,只追加列。
如果有人可以就此提供一些指导,那将是一个很大的帮助。
【问题讨论】:
-
这属于转置。因为它是 SAS 数据集而不是“矩阵”,所以要求相同数量的行/列的想法是无效的。查看 proc transpose 以重塑您的数据。