在我的 SAS 线性回归模型中添加条件
add condition in my linear regression model in SAS
我是SAS的初学者。我目前正在做一个线性模型,但我坚持拟合模型。最初,我需要先将数据分成两部分。
这是我将数据分成两部分的代码,T 是解释性数据,然后 C 是响应。
data mydata;
set rawdata;
if T < 10 then Cbelow = C;
else Cabove= C;
run;
然后我在做模型,因为我想在T <10和T> = 10时检查线性回归。然后我使用我刚才拆分的数据。那么我的代码如下:
proc reg data= mydata;
if T<10 then model Cbelow=T;
else model Cabove=T
run;
我在 运行 上述代码时遇到错误。我不知道为什么。谁能帮我解决问题?任何帮助都会非常感激。
非常感谢!
这是错误:
proc reg data= mydata;
157
158 if T<10 then model Cbelow=T;
--
180
NOTE: The previous statement has been deleted.
ERROR 180-322: Statement is not valid or it is used out of proper order.
159
160 else model Cabove=T
----
180
ERROR 180-322: Statement is not valid or it is used out of proper order.
161
162 run;
NOTE: The previous statement has been deleted
正如乔所说,您应该查看文档。就是说,我会读懂字里行间的意思并在这里帮助您。
如果您正在寻找 2 个单独的回归、无合并或混合效应等,则添加分类变量并使用 PROC REG
中的 BY
语句。
data mydata;
set rawdata;
if T < 10 then High_Low ="LOW";
else High_Low = "High";
run;
proc sort data=mydata;
by high_low;
run;
proc reg data=mydata;
by high_low;
model C=T;
run;
quit;
我是SAS的初学者。我目前正在做一个线性模型,但我坚持拟合模型。最初,我需要先将数据分成两部分。
这是我将数据分成两部分的代码,T 是解释性数据,然后 C 是响应。
data mydata;
set rawdata;
if T < 10 then Cbelow = C;
else Cabove= C;
run;
然后我在做模型,因为我想在T <10和T> = 10时检查线性回归。然后我使用我刚才拆分的数据。那么我的代码如下:
proc reg data= mydata;
if T<10 then model Cbelow=T;
else model Cabove=T
run;
我在 运行 上述代码时遇到错误。我不知道为什么。谁能帮我解决问题?任何帮助都会非常感激。 非常感谢!
这是错误:
proc reg data= mydata;
157
158 if T<10 then model Cbelow=T;
--
180
NOTE: The previous statement has been deleted.
ERROR 180-322: Statement is not valid or it is used out of proper order.
159
160 else model Cabove=T
----
180
ERROR 180-322: Statement is not valid or it is used out of proper order.
161
162 run;
NOTE: The previous statement has been deleted
正如乔所说,您应该查看文档。就是说,我会读懂字里行间的意思并在这里帮助您。
如果您正在寻找 2 个单独的回归、无合并或混合效应等,则添加分类变量并使用 PROC REG
中的 BY
语句。
data mydata;
set rawdata;
if T < 10 then High_Low ="LOW";
else High_Low = "High";
run;
proc sort data=mydata;
by high_low;
run;
proc reg data=mydata;
by high_low;
model C=T;
run;
quit;