BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
csigona
Calcite | Level 5

Hi guys,

My question is that: How do I use proc arboretum  to score new data without target variable?

any help it wil be appreciated 

Thanks

 

1 ACCEPTED SOLUTION

Accepted Solutions
DougWielenga
SAS Employee

Carlos,


I'm not aware of any way to obtain the score code from the ARBORETUM procedure itself as it was never intended to work as a standalone procedure. The non-HP data mining procedures underlying SAS Enterprise Miner were designed to be used by the nodes in the SAS Enterprise Miner interface.  SAS Enterprise Miner has a Score node which collects the relevant code from each of the nodes in a flow to build scoring code (both optimized and standard).

 

Is there a reason you are calling the procedure directly rather than using SAS Enterprise Miner?  You would not be able to run the ARBORETUM procedure unless you had SAS Enterprise Miner licensed on the machine.   If you have SAS/STAT licensed, however, you can call the HPSPLIT procedure which builds a tree. HPSPLIT supports a RULES statement which specifies a file for saving the rules that define the leaves for the final tree.   These results can be combined with the output from the OUTPUT statement and you could use this logic to create score code, but I am not aware of a way to generate score code directly like SAS Enterprise Miner does.

 

Hope this helps!

Doug

 

 

 

View solution in original post

4 REPLIES 4
DougWielenga
SAS Employee

The ARBORETUM procedure is used predominantly in the Decision Tree node in SAS Enterprise Miner.   This procedure was not intended to be used as a standalone procedure so there is no direct support for generating and using score code when you call the procedure directly.  It is easy to score data both inside and outside of SAS Enterprise Miner using the score code that is accumulated in a Score node attached following the Decision Tree node.   

 

If you wish to build trees directly, you should consider using the HPSPLIT procedure which is documented at 

 

    http://support.sas.com/documentation/cdl/en/stathpug/67524/HTML/default/viewer.htm#stathpug_hpsplit_...

 

If you are running a flow in SAS Enterprise Miner or are calling SAS Enterprise Miner via batch code, I would be happy to give you the steps to score either inside of or outside of SAS Enterprise Miner.   Just let me know how you are using the software.

 

Hope this helps!

Doug

csigona
Calcite | Level 5

Hi Doug,

thank you for helping.

I use  the proc out of the EM. I don’t have this tool. I use Entreprise Guide and  I’m running the proc  by using a sas program.  

Is it possibile to ‘extract’ the scoring rules from the output proc and apply it to a new data?

 

Thank in advance

Carlo

DougWielenga
SAS Employee

Carlos,


I'm not aware of any way to obtain the score code from the ARBORETUM procedure itself as it was never intended to work as a standalone procedure. The non-HP data mining procedures underlying SAS Enterprise Miner were designed to be used by the nodes in the SAS Enterprise Miner interface.  SAS Enterprise Miner has a Score node which collects the relevant code from each of the nodes in a flow to build scoring code (both optimized and standard).

 

Is there a reason you are calling the procedure directly rather than using SAS Enterprise Miner?  You would not be able to run the ARBORETUM procedure unless you had SAS Enterprise Miner licensed on the machine.   If you have SAS/STAT licensed, however, you can call the HPSPLIT procedure which builds a tree. HPSPLIT supports a RULES statement which specifies a file for saving the rules that define the leaves for the final tree.   These results can be combined with the output from the OUTPUT statement and you could use this logic to create score code, but I am not aware of a way to generate score code directly like SAS Enterprise Miner does.

 

Hope this helps!

Doug

 

 

 

PadraicGNeville
SAS Employee

Hi, CSGona.

 

I would expect the SCORE statement to work:

SCORE data=newdata out=outdataset;

 

I googled "SAS PROC ARBORETUM" and the documentation came up first.

-Padraic

SAS Innovate 2025: Save the Date

 SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!

Save the date!

How to choose a machine learning algorithm

Use this tutorial as a handy guide to weigh the pros and cons of these commonly used machine learning algorithms.

Find more tutorials on the SAS Users YouTube channel.

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