Sorting Issues

Reply
Frequent Contributor
Posts: 120

Sorting Issues

My data looks like what I have in the attached .csv file and I need to have both variables sorted in ascending order. I tried using "proc sort" and "proc sql order by" to get the CDates sorted, but I have not been successful. I am thinking somekind of do-loop should do the trick, but at this point I am out of ideas.

Can anyone offer any insight?

Attachment
Respected Advisor
Posts: 3,837

Re: Sorting Issues

It works for me with your data.

DATA WORK.Example;

   source_rec_num+1;

    LENGTH

        CouponDates        8

        CDates             8 ;

    FORMAT

        CouponDates      DATE9.

        CDates           DATE10. ;

    INFORMAT

        CouponDates      YYMMDD10.

        CDates           YYMMDD10. ;

    INFILE 'c:\temp\example.csv'

        DLM=','

        truncover

        DSD

        firstobs=2;

    INPUT

        CouponDates      : ?? YYMMDD8.

        CDates           : ?? YYMMDD8. ;

RUN;

proc sort data=work.example;

  by CouponDates CDates;

run;

data CDates_Not_Ascending;

  set work.example;

  if lag(CDates) > CDates then output;

run;

Respected Advisor
Posts: 4,609

Re: Sorting Issues

Also, given your date format (yymmdd.), sorting works even if you read the dates as character.  - PG

PG
Ask a Question
Discussion stats
  • 2 replies
  • 170 views
  • 0 likes
  • 3 in conversation