我有以下数据集,它是一组变量及其各自的p值和来自简单线性回归的R平方值。
data have;
input Variable$ Probt R_value tie$;
cards;
X1 0.0016 0.4344 .
X2 0.0003 0.5204 .
X3 0.0001 0.7497 yes
X4 0.0001 0.9026 yes
run;
但是,正如您所看到的,有两个变量的Probt
值为0.001,并且我创建了一个名为tie
的变量来捕获两个变量具有相同p值的情况。< / p>
我想要的是以下内容。在存在平局的情况下,我想通过从tie
变量中选择具有最高R_value的变量来打破平局,使其看起来如下所示
data want;
input Variable$ Probt R_value tie$;
cards;
X1 0.0016 0.4344 .
X2 0.0003 0.5204 .
X4 0.0001 0.9026 yes
run;
答案 0 :(得分:1)
假设probt
值与您的示例中的值完全相同,您可以使用last.
变量执行简单操作(也假设它们按顺序排序,如果不使用{ {1}}首先):
proc sort
如果data want;
set have;
by descending probt r_value;
if last.probt; *if it is the last record from any set of identical probt values, keep it;
run;
值被四舍五入并且不完全相同,则需要首先创建一个真正相同的变量(使用round)。如果您已经计算了probt
,那么您可能已经完成了这项工作。
答案 1 :(得分:1)
如下所示。但要注意@reeza和@joe
提到的计算结合值var value;
for (var i = 1; i <= 10; i++) {
value = i;
foo(value);
}
function foo() {
console.log(value);
}