Hello,
I want to program linear thresholds for continuous variables. In my case, it means that if the values of variable A are <=30, then these values shall be put (placed) as 30. Otherwise the variable A shall be applied.
Therefore my code is:
A=A_t30;
if A_t30<=30 then A_t30=30;
Then all values of variable A_t30 are placed as 30. Mean is 30; SD is 0; Minimum is 30; Maximum is 30.
Do you know my mistake?
I am glad if you can help me. Thank you very much.
Kind regards
Show some example data, some with problem values and some without. And the entire code used.
If A_t30 does not exist prior to executing this statement:
A = A_t30;
Then you created a variable A_t30 and all values were missing. So since missing is treated as < 30 it gets set to 30.
Perhaps you intended to use
A_t30 = A;
assigning the value of the variable A to A_t30 before the test.
The receiving side of value assignment is always the left of the = sign.
Show some example data, some with problem values and some without. And the entire code used.
If A_t30 does not exist prior to executing this statement:
A = A_t30;
Then you created a variable A_t30 and all values were missing. So since missing is treated as < 30 it gets set to 30.
Perhaps you intended to use
A_t30 = A;
assigning the value of the variable A to A_t30 before the test.
The receiving side of value assignment is always the left of the = sign.
Thank you very much. It was very helpful. 🙂
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.