```Date: Thu, 7 Nov 2002 11:33:05 -0500 Reply-To: "Droogendyk, Harry" Sender: "SAS(r) Discussion" From: "Droogendyk, Harry" Subject: Re: Elementary macro problem (I think) Content-Type: text/plain; charset="iso-8859-1" Peter: Two things. You probably want to subscript your array with &I rather than just i. You're getting the error on the first iteration of the macro loop. SAS is smart enough to know that min(var1-var1) is only variable. Your macro loop should probably start at 2 since the distance between one point is probably kinda meaningless anyway. -----Original Message----- From: Peter Flom [mailto:flom@NDRI.ORG] Sent: Thursday, November 07, 2002 11:24 AM To: SAS-L@LISTSERV.UGA.EDU Subject: Elementary macro problem (I think) OK, I solved the earlier problem..... now I have a file with variables city distance_1 through distance_95 start_1 through start_95 and they are in order of start. e.g. the first city was the one with the first start date, and has a distance_1 of 0, and all other distances missing. the second city has distance_1 = to the distance between it and the first city, distance_2 = 0, all other distances missing, and so on. What I need is to find several things (e.g. the minimum, the average, other things as well) about each city but only about certain distances. e.g. the minimum distance at time 5 is (for each city) the minimum of distance_1 through distance_5. I *THINK* I need a macro..... Note that this is my FIRST ATTEMPT AT WRITING a macro program. I tried this PROGRAM SNIPPET STARTS %macro minasof; %do i = 1 %to 95; minasof(i) = min(of distance_1 - distance_&i); %end; %mend minasof; %minasof run; PROGRAM SNIPPET ENDS but I got an error message saying that the min function didn't have enough arguments..... Any help appreciated Peter Peter L. Flom, PhD Assistant Director, Statistics and Data Analysis Core Center for Drug Use and HIV Research National Development and Research Institutes 71 W. 23rd St New York, NY 10010 (212) 845-4485 (voice) (917) 438-0894 (fax) ```

Back to: Top of message | Previous page | Main SAS-L page