如何净化数据集?

时间:2017-03-22 13:48:31

标签: sas

我有以下数据集:

data have;
format id1 id2 $25. value 8.;
input id1 id2 value;
datalines;
a   b   10
a   c   2
a   d   6
b   a   5
c   a   3
c   d   7
;
run;

我希望得到以下内容:

data want;
format id1 id2 $25. value 8.;
input id1 id2 value;
datalines;
a   b   5
a   d   6
c   a   1
c   d   7
;
run;

在实践中,我有 - 寻找前两排的无序夫妻, - 保持这对夫妇的价值更大, - 并为其分配值之间的差异。

观察的顺序是不相关的,但ID的顺序是基本的(例如,最终数据集中的观察(c a 1)不等于(c a 1),而是等于(c a -1))。 为简单起见,我使用了字母,但ID可以是任何字符串(25美元)。

非常感谢任何帮助。

非常感谢!!

1 个答案:

答案 0 :(得分:0)

按字母顺序对id1 / id2进行排序,如果这涉及交换它们,请将 var x = e.e.offsetX;//parseInt(mouse.x); var y = e.e.offsetY;//parseInt(mouse.y); 设置为value。然后排序value*-1。然后根据需要对行进行求和,得到每个id1 / id2组合1。然后根据需要换回来。

by id1 id2