BookmarkSubscribeRSS Feed
SAS_ASS
Obsidian | Level 7
proc stdize data=EMWS1.VarClus_TRAIN  method=RANGE pstat;
var	NO_TRX_POS_NORM NO_TRX_12M_ONL_NORM IMP_AGE BASKET_QTY_NET_12M SUM_VAL_12M_NORM
          SUM_VAL_NORM SUM_QTY_NORM;
   run;

Hey everyone,

before I run the cluster node I want to make a standardization of these variables shown in the code.

However, it doesn't work unfortunately. Do I have to name a dataaset output to overwrite the variables?

Thanks a lot!

4 REPLIES 4
ballardw
Super User

@SAS_ASS wrote:
proc stdize data=EMWS1.VarClus_TRAIN  method=RANGE pstat;
var	NO_TRX_POS_NORM NO_TRX_12M_ONL_NORM IMP_AGE BASKET_QTY_NET_12M SUM_VAL_12M_NORM
          SUM_VAL_NORM SUM_QTY_NORM;
   run;

Hey everyone,

before I run the cluster node I want to make a standardization of these variables shown in the code.

However, it doesn't work unfortunately. Do I have to name a dataaset output to overwrite the variables?

Thanks a lot!


You really want an OUT= data set to send the output to. It would be a very bad idea to replace your existing data= data set.

 

Doesn't work is awful vague.

Are there errors in the log?: Post the code and log in a code box opened with the {i} to maintain formatting of error messages.

No output? Post any log in a code box.

Unexpected output? Provide input data in the form of data step code pasted into a code box, the actual results and the expected results. Instructions here: https://communities.sas.com/t5/SAS-Communities-Library/How-to-create-a-data-step-version-of-your-dat... will show how to turn an existing SAS data set into data step code that can be pasted into a forum code box using the {i} icon or attached as text to show exactly what you have and that we can test code against.

SAS_ASS
Obsidian | Level 7

Well I want to have the variables standardized in the output data set which is delivered to the cluster node. I'm not really interested in the parameters that are shown in the output....at all there are no errors, but mainly only one or no variables are standardized. Thanks a lot!

Tom
Super User Tom
Super User

If you don't tell it what dataset to create it it will just choose a dataset name on its own.  SAS creates datasets named DATA1, DATA2, ....

344  proc stdize data=sashelp.class;
345  run;

NOTE: No VAR statement is given. All numerical variables not named elsewhere make up the first set
      of variables.
NOTE: There were 19 observations read from the data set SASHELP.CLASS.
NOTE: The data set WORK.DATA1 has 19 observations and 5 variables.

Use the OUT= option on the PROC statement to tell it what dataset to create.

proc stdize data=EMWS1.VarClus_TRAIN  method=RANGE pstat
 out=varclus_train_stdize
;
  var NO_TRX_POS_NORM NO_TRX_12M_ONL_NORM IMP_AGE BASKET_QTY_NET_12M SUM_VAL_12M_NORM
      SUM_VAL_NORM SUM_QTY_NORM
  ;
run;

proc cluster data=varclus_train_stdize ....
SAS_ASS
Obsidian | Level 7
Thanks for your answer!! The problem ist that in the Entrprise Miner, names of data sets to be imported and exported from the node are set automatically. but i can not name it like the exported data set. I have no permission to write to that data set. Do you have experience with the SAS Enterprise Miner? Thanks and kind regards! Laura

sas-innovate-2024.png

Available on demand!

Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.

 

Register now!

How to Concatenate Values

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.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 4 replies
  • 789 views
  • 1 like
  • 3 in conversation