Skip to main content
grammar
Source Link

I am running a proc GLM in SAS with specific contrasts, one of which is included in the code below. With the following code, all my contrasts are always unestimable:

proc    GLM data=my_data;
Class   A   B   C;  
Model   norm_counts = A|B C(B) A*C(B);
Random  C(B) A*C(B) / test;
Contrast 'Female.Obp50Pos - Female.Obp50Neg' A*B -1 0 1 0 0 0 0 0;
run;

However, when I use the Contrast statement's singular option to tune the estimability checking, I can make the contrast estimable - but only if I set it to exactly 1 (see below).

proc    GLM data=my_data;
class   A   B   C;  
model   norm_counts = A|B C(B) A*C(B);
random  C(B) A*C(B) / test;
contrast 'Female.Obp50Pos - Female.Obp50Neg' A*B -1 0 1 0 0 0 0 0 / singular=1;
run;

Since the default is singular=10^-4, setting it to 1 seems like a mere hack to coerce SAS to give a p-value for my contrast but is likely to be meaningless. However, this is a mere hunch.

Is setting singular=1 valid to make an otherwise unestimable contrast estimable valid? Why or why not?

Please note that I cannot change the model specification, and from the output of the Contrast statement's "e" option the contrast is what it needs to be.

I am running a proc GLM in SAS with specific contrasts, one of which is included in the code below. With the following code, all my contrasts are always unestimable:

proc    GLM data=my_data;
Class   A   B   C;  
Model   norm_counts = A|B C(B) A*C(B);
Random  C(B) A*C(B) / test;
Contrast 'Female.Obp50Pos - Female.Obp50Neg' A*B -1 0 1 0 0 0 0 0;
run;

However, when I use the Contrast statement's singular option to tune the estimability checking, I can make the contrast estimable - but only if I set it to exactly 1 (see below).

proc    GLM data=my_data;
class   A   B   C;  
model   norm_counts = A|B C(B) A*C(B);
random  C(B) A*C(B) / test;
contrast 'Female.Obp50Pos - Female.Obp50Neg' A*B -1 0 1 0 0 0 0 0 / singular=1;
run;

Since the default is singular=10^-4, setting it to 1 seems like a mere hack to coerce SAS to give a p-value for my contrast but is likely to be meaningless. However, this is a mere hunch.

Is setting singular=1 valid to make an otherwise unestimable contrast estimable? Why or why not?

Please note that I cannot change the model specification, and from the output of the Contrast statement's "e" option the contrast is what it needs to be.

I am running a proc GLM in SAS with specific contrasts, one of which is included in the code below. With the following code, all my contrasts are always unestimable:

proc    GLM data=my_data;
Class   A   B   C;  
Model   norm_counts = A|B C(B) A*C(B);
Random  C(B) A*C(B) / test;
Contrast 'Female.Obp50Pos - Female.Obp50Neg' A*B -1 0 1 0 0 0 0 0;
run;

However, when I use the Contrast statement's singular option to tune the estimability checking, I can make the contrast estimable - but only if I set it to exactly 1 (see below).

proc    GLM data=my_data;
class   A   B   C;  
model   norm_counts = A|B C(B) A*C(B);
random  C(B) A*C(B) / test;
contrast 'Female.Obp50Pos - Female.Obp50Neg' A*B -1 0 1 0 0 0 0 0 / singular=1;
run;

Since the default is singular=10^-4, setting it to 1 seems like a mere hack to coerce SAS to give a p-value for my contrast but is likely to be meaningless. However, this is a mere hunch.

Is setting singular=1 to make an otherwise unestimable contrast estimable valid? Why or why not?

Please note that I cannot change the model specification, and from the output of the Contrast statement's "e" option the contrast is what it needs to be.

Added clarification of question toward end
Source Link

I am running a proc GLM in SAS with specific contrasts, one of which is included in the code below. With the following code, all my contrasts are always unestimable:

proc    GLM data=my_data;
Class   A   B   C;  
Model   norm_counts = A|B C(B) A*C(B);
Random  C(B) A*C(B) / test;
Contrast 'Female.Obp50Pos - Female.Obp50Neg' A*B -1 0 1 0 0 0 0 0;
run;

However, when I use the Contrast statement's singular option to tune the estimability checking, I can make the contrast estimable - but only if I set it to exactly 1 (see below).

proc    GLM data=my_data;
class   A   B   C;  
model   norm_counts = A|B C(B) A*C(B);
random  C(B) A*C(B) / test;
contrast 'Female.Obp50Pos - Female.Obp50Neg' A*B -1 0 1 0 0 0 0 0 / singular=1;
run;

Since the default is singular=10^-4, setting it to 1 seems like a mere hack to coerce SAS to give a p-value for my contrast but is likely to be meaningless. However, this is a mere hunch.

Is setting singular=1 valid to make an otherwise unestimable contrast estimable? Why or why not?

Please note that I cannot change the model specification, and from the output of the Contrast statement's "e" option the contrast is what it needs to be.

I am running a proc GLM in SAS with specific contrasts, one of which is included in the code below. With the following code, all my contrasts are always unestimable:

proc    GLM data=my_data;
Class   A   B   C;  
Model   norm_counts = A|B C(B) A*C(B);
Random  C(B) A*C(B) / test;
Contrast 'Female.Obp50Pos - Female.Obp50Neg' A*B -1 0 1 0 0 0 0 0;
run;

However, when I use the Contrast statement's singular option to tune the estimability checking, I can make the contrast estimable - but only if I set it to exactly 1 (see below).

proc    GLM data=my_data;
class   A   B   C;  
model   norm_counts = A|B C(B) A*C(B);
random  C(B) A*C(B) / test;
contrast 'Female.Obp50Pos - Female.Obp50Neg' A*B -1 0 1 0 0 0 0 0 / singular=1;
run;

Since the default is singular=10^-4, setting it to 1 seems like a mere hack to coerce SAS to give a p-value for my contrast but is likely to be meaningless. However, this is a mere hunch.

Is setting singular=1 valid to make an otherwise unestimable contrast estimable?

I am running a proc GLM in SAS with specific contrasts, one of which is included in the code below. With the following code, all my contrasts are always unestimable:

proc    GLM data=my_data;
Class   A   B   C;  
Model   norm_counts = A|B C(B) A*C(B);
Random  C(B) A*C(B) / test;
Contrast 'Female.Obp50Pos - Female.Obp50Neg' A*B -1 0 1 0 0 0 0 0;
run;

However, when I use the Contrast statement's singular option to tune the estimability checking, I can make the contrast estimable - but only if I set it to exactly 1 (see below).

proc    GLM data=my_data;
class   A   B   C;  
model   norm_counts = A|B C(B) A*C(B);
random  C(B) A*C(B) / test;
contrast 'Female.Obp50Pos - Female.Obp50Neg' A*B -1 0 1 0 0 0 0 0 / singular=1;
run;

Since the default is singular=10^-4, setting it to 1 seems like a mere hack to coerce SAS to give a p-value for my contrast but is likely to be meaningless. However, this is a mere hunch.

Is setting singular=1 valid to make an otherwise unestimable contrast estimable? Why or why not?

Please note that I cannot change the model specification, and from the output of the Contrast statement's "e" option the contrast is what it needs to be.

Source Link

Validity of setting Singular=1 in proc GLM Contrast statement (SAS)

I am running a proc GLM in SAS with specific contrasts, one of which is included in the code below. With the following code, all my contrasts are always unestimable:

proc    GLM data=my_data;
Class   A   B   C;  
Model   norm_counts = A|B C(B) A*C(B);
Random  C(B) A*C(B) / test;
Contrast 'Female.Obp50Pos - Female.Obp50Neg' A*B -1 0 1 0 0 0 0 0;
run;

However, when I use the Contrast statement's singular option to tune the estimability checking, I can make the contrast estimable - but only if I set it to exactly 1 (see below).

proc    GLM data=my_data;
class   A   B   C;  
model   norm_counts = A|B C(B) A*C(B);
random  C(B) A*C(B) / test;
contrast 'Female.Obp50Pos - Female.Obp50Neg' A*B -1 0 1 0 0 0 0 0 / singular=1;
run;

Since the default is singular=10^-4, setting it to 1 seems like a mere hack to coerce SAS to give a p-value for my contrast but is likely to be meaningless. However, this is a mere hunch.

Is setting singular=1 valid to make an otherwise unestimable contrast estimable?