BookmarkSubscribeRSS Feed
jeenat
Calcite | Level 5

Hi,

I am new to SAS and I have been trying to run survival analysis for sometime now. My general aim is to understand  critical factors that affects customer defection over 36 months at individual level. I have incorporated several independent variables (both time constant and time varying) from transaction & complaints dataset. For your information, currently I am dealing with 2,721,168 observations and 20 variables. I started from EG and moved on to SAS 9.3 and now SAS 9.4.

I have several questions as follows:

1. I was advised to use PROC PHREG but with a random statement. I would like to know if the random statement is necessary since I do not have  repeated measures.

2. The data structure is this correct or is there a better way to set it up?

3. I was also asked to use LAG function but do you think this is appropriate since I do not have a time series dataset.

4. I am experiencing several issues when I ran the whole dataset as follows:

NOTE: There were 2721168 observations read from the data set

      WORK.COMPLAINT.

ERROR: Insufficient space in file WORK.COMPLAINT.DATA.

ERROR: Failure while merging sorted runs from utility file 1 to final

       output.

ERROR: Failure encountered during external sort.

ERROR: File WORK.COMPLAINT.DATA is damaged. I/O processing did not

       complete.

688  proc lifetest data=ModelData_DataModel_Final atrisk plots=survival(cb)

688!  outs=out500;

689  time Time*CENSOR(0);

690  run;

NOTE: The LOGLOG transform is used to compute the confidence limits for

      the quartiles of the survivor distribution and the confidence limit

      for the survivor function. To suppress using this transform, specify

      CONFTYPE=LINEAR in the PROC LIFETEST statement.

ERROR: The SAS System stopped processing this step because of insufficient

       memory.

NOTE: The data set WORK.OUT500 has 8385 observations and 5 variables.

NOTE: PROCEDURE LIFETEST used (Total process time):

      real time           17.22 seconds

      cpu time            17.19 seconds

692  proc lifetest data=ModelData_DataModel_Final atrisk nelson;

693  time Time*CENSOR(0);

694  run;

NOTE: The LOGLOG transform is used to compute the confidence limits for

      the quartiles of the survivor distribution. To suppress using this

      transform, specify CONFTYPE=LINEAR in the PROC LIFETEST statement.

ERROR: The SAS System stopped processing this step because of insufficient

       memory.

NOTE: PROCEDURE LIFETEST used (Total process time):

      real time           5.53 seconds

      cpu time            5.53 seconds

695  title;

696  ods graphics off;

I thank you for your attention.

Sincerely,

Jeenat

2 REPLIES 2
RamKumar
Fluorite | Level 6

Try with following options to get rid of memory issue and for the rest someone would shed light to your questions.

options maxmemquery=6M;

Reeza
Super User

I'd chat with tech support about this. Depending on your OS/SAS installation (server/desktop) there are various options that can be set to allow this to process.

Another way would be to partition the data and run multiple samples though that isn't optimal...

sas-innovate-2024.png

Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.

Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.

 

Register now!

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

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
  • 2 replies
  • 1521 views
  • 0 likes
  • 3 in conversation