I am trying to implement the K-means Clustering algorithm. I imported the data set(CREDIT) to sas , replaced the missing values (NA) with 0 of the variable that i need ( MonthlyIncome ) but variable have the character data type. But when i try to convert this variable to numeric to do the Scaling process with the following code the log is showing the following errors. please help me..
error 1: Found " Monthly_Income" when expecting " ;"
error2: Statement "Monthly_Income" is not valid;
Code:
Proc standerd data=CREDIT mean=0 std=1;
out=CREDIT1;
var age MonthlyIncome debtratio etc...............;
Var Monthly_Inc=(MonthlyIncome, best12.);
run;
Hi,
First convert variable in data step and then standardize.
Data step..? you mean..? at the time of importing the data set to sas.? or change the type directly.?
@NVN wrote:
Data step..? you mean..? at the time of importing the data set to sas.? or change the type directly.?
Best would be to insure that the data was read into SAS as a numeric.
If that isn't practical for some reason you can use a data step to change:
data want;
set have (rename=(income=textincome));
income = input(textincome,best10.);
/* assign format or labels as desired*/
drop textincome;
run;
the rename is so you could use the same varaible name as you cannot change sas data types directly.
It is working.. Thank you soo much guys.
Build your skills. Make connections. Enjoy creative freedom. Maybe change the world. Registration is now open through August 30th. Visit the SAS Hackathon homepage.
Register today!What’s the difference between SAS Enterprise Guide and SAS Studio? How are they similar? Just ask SAS’ Danny Modlin.
Find more tutorials on the SAS Users YouTube channel.
Select SAS Training centers are offering in-person courses. View upcoming courses for: