<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Sort by user defined criteria in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Sort-by-user-defined-criteria/m-p/793340#M254262</link>
    <description>&lt;PRE&gt; Data have;
 input appidentity ID Var $ value Supplement; 
 cards;
888888 111 Inter . 100
888888 111 Age 50 200
888888 111 Wealth 5 300
888888 111 Educ 30 200
888888 111 Loan 65 500
888888 111 Cycle 120 100
888888 111 Total . 1400
888888 222 Inter . 200 300
888888 222 Age 40 200
888888 222 Wealth 300 500
888888 222 Educ 5 500
888888 222 Loan 40 200
888888 222 Cycle 10 100
888888 222 Total . 1800
999999 777 Inter . 100
999999 777 Age 60 200
999999 777 Wealth 500 700
999999 777 Educ 8 200
999999 777 Loan 0 300
999999 777 Cycle 300 1500
999999 777 Total . 3000
;
RUN;


proc format;
invalue fmt
'Inter'=1
'Educ'=2
'Loan'=3
'Cycle'=4
'Wealth'=5
'Age'=6
'Total'=7
;
run;

proc sql;
create table want as
select *
 from have 
  order by appidentity ,ID ,input(var,fmt.);
quit;


&lt;/PRE&gt;</description>
    <pubDate>Sun, 30 Jan 2022 08:58:20 GMT</pubDate>
    <dc:creator>Ksharp</dc:creator>
    <dc:date>2022-01-30T08:58:20Z</dc:date>
    <item>
      <title>Sort by user defined criteria</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Sort-by-user-defined-criteria/m-p/793334#M254259</link>
      <description>&lt;P&gt;Hello&lt;/P&gt;
&lt;P&gt;I want to sort by user defined order.&lt;/P&gt;
&lt;P&gt;Why this code is not working?&lt;/P&gt;
&lt;P&gt;I expect to get results&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ronein_0-1643528912287.png" style="width: 400px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/67975iED2EE54DA359EDDB/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Ronein_0-1643528912287.png" alt="Ronein_0-1643528912287.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;
 Data have;
 input appidentity ID Var $ value Supplement; 
 cards;
888888 111 Inter . 100
888888 111 Age 50 200
888888 111 Wealth 5 300
888888 111 Educ 30 200
888888 111 Loan 65 500
888888 111 Cycle 120 100
888888 111 Total . 1400
888888 222 Inter . 200 300
888888 222 Age 40 200
888888 222 Wealth 300 500
888888 222 Educ 5 500
888888 222 Loan 40 200
888888 222 Cycle 10 100
888888 222 Total . 1800
999999 777 Inter . 100
999999 777 Age 60 200
999999 777 Wealth 500 700
999999 777 Educ 8 200
999999 777 Loan 0 300
999999 777 Cycle 300 1500
999999 777 Total . 3000
;
RUN;
 
Data Have2;
SET have;
appidentity_=put(appidentity,best.);
ID_=put(ID,best.);
RUN;

proc sql;
create table Want as
select *
from Have2
order by whichc(appidentity_,
                ID_,
				'Inter',
				'Educ',
				'Loan',
				'Cycle',
				'Wealth',
				'Age',
				'Total');
quit;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 30 Jan 2022 07:48:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Sort-by-user-defined-criteria/m-p/793334#M254259</guid>
      <dc:creator>Ronein</dc:creator>
      <dc:date>2022-01-30T07:48:54Z</dc:date>
    </item>
    <item>
      <title>Re: Sort by user defined criteria</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Sort-by-user-defined-criteria/m-p/793337#M254260</link>
      <description>&lt;P&gt;how about this&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;
create table Want as
select *
from Have
order by appidentity
        ,ID
        ,whichc(VAR,
		       'Inter',
		       'Educ',
		       'Loan',
		       'Cycle',
		       'Wealth',
		       'Age',
		       'Total');
quit;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;check &lt;A href="https://go.documentation.sas.com/doc/en/vdmmlcdc/8.1/lefunctionsref/p0jfvenvsqk24vn1q2ypospoq9ij.htm" target="_self"&gt;whichc&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 30 Jan 2022 08:29:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Sort-by-user-defined-criteria/m-p/793337#M254260</guid>
      <dc:creator>japelin</dc:creator>
      <dc:date>2022-01-30T08:29:22Z</dc:date>
    </item>
    <item>
      <title>Re: Sort by user defined criteria</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Sort-by-user-defined-criteria/m-p/793340#M254262</link>
      <description>&lt;PRE&gt; Data have;
 input appidentity ID Var $ value Supplement; 
 cards;
888888 111 Inter . 100
888888 111 Age 50 200
888888 111 Wealth 5 300
888888 111 Educ 30 200
888888 111 Loan 65 500
888888 111 Cycle 120 100
888888 111 Total . 1400
888888 222 Inter . 200 300
888888 222 Age 40 200
888888 222 Wealth 300 500
888888 222 Educ 5 500
888888 222 Loan 40 200
888888 222 Cycle 10 100
888888 222 Total . 1800
999999 777 Inter . 100
999999 777 Age 60 200
999999 777 Wealth 500 700
999999 777 Educ 8 200
999999 777 Loan 0 300
999999 777 Cycle 300 1500
999999 777 Total . 3000
;
RUN;


proc format;
invalue fmt
'Inter'=1
'Educ'=2
'Loan'=3
'Cycle'=4
'Wealth'=5
'Age'=6
'Total'=7
;
run;

proc sql;
create table want as
select *
 from have 
  order by appidentity ,ID ,input(var,fmt.);
quit;


&lt;/PRE&gt;</description>
      <pubDate>Sun, 30 Jan 2022 08:58:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Sort-by-user-defined-criteria/m-p/793340#M254262</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2022-01-30T08:58:20Z</dc:date>
    </item>
    <item>
      <title>Re: Sort by user defined criteria</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Sort-by-user-defined-criteria/m-p/793350#M254268</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/159549"&gt;@Ronein&lt;/a&gt;,&amp;nbsp;I see that you adapted my technique from the post &lt;A href="https://communities.sas.com/t5/SAS-Programming/Order-rows-by-user-defined-criteria/m-p/793349#M254267" target="_self"&gt;here&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Please mark that as closed before you open a new thread &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Sun, 30 Jan 2022 11:49:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Sort-by-user-defined-criteria/m-p/793350#M254268</guid>
      <dc:creator>PeterClemmensen</dc:creator>
      <dc:date>2022-01-30T11:49:41Z</dc:date>
    </item>
  </channel>
</rss>

