<?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: Reg-Moving to other based on - in SAS Procedures</title>
    <link>https://communities.sas.com/t5/SAS-Procedures/Reg-Moving-to-other-based-on/m-p/71095#M20514</link>
    <description>Another solution.&lt;BR /&gt;
[pre]&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
data a;&lt;BR /&gt;
input id s $ 3-118;&lt;BR /&gt;
datalines;&lt;BR /&gt;
1 prg-code,main,IT-Hardware,Ins,Main,Non_IT- ,WOrk-Hardwrk,giveup,main,doit, -Nowork,ceo-cash,main,user,repair,nonit,&lt;BR /&gt;
2 prgcode,main,IT-Hardware,Ins,Main,Non_IT- ,WOrk-Hardwrk,giveup,main,doit, -Nowork,ceo-cash,main,user,repair,non-it,&lt;BR /&gt;
3 prg-code,main,IT-Hardware,Ins,Main,Non_IT- ,WOrk-Hardwrk,giveup,main,doit, -Nowork,ceo-cash,main,user,repair,non-it,&lt;BR /&gt;
;&lt;BR /&gt;
run;&lt;BR /&gt;
data temp(drop=s i);&lt;BR /&gt;
 set a;&lt;BR /&gt;
 if id ne lag(id) then count+1;&lt;BR /&gt;
 i=1;ss=scan(s,i,',');&lt;BR /&gt;
 do while(not missing(ss));&lt;BR /&gt;
 if findc(ss,'-') then count+1;&lt;BR /&gt;
  output;&lt;BR /&gt;
  i+1;&lt;BR /&gt;
  ss=scan(s,i,',');&lt;BR /&gt;
 end;&lt;BR /&gt;
run;&lt;BR /&gt;
data want;&lt;BR /&gt;
 set temp;&lt;BR /&gt;
 by count notsorted;&lt;BR /&gt;
 length s $ 100;&lt;BR /&gt;
 retain s;&lt;BR /&gt;
 if first.count then call missing(s);&lt;BR /&gt;
 s=catx(',',s,ss);&lt;BR /&gt;
 if last.count then output;&lt;BR /&gt;
 drop ss count;&lt;BR /&gt;
run;&lt;BR /&gt;
  &lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
[/pre]&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
Ksharp</description>
    <pubDate>Tue, 31 May 2011 03:47:59 GMT</pubDate>
    <dc:creator>Ksharp</dc:creator>
    <dc:date>2011-05-31T03:47:59Z</dc:date>
    <item>
      <title>Reg-Moving to other based on -</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Reg-Moving-to-other-based-on/m-p/71091#M20510</link>
      <description>data a; &lt;BR /&gt;
 input id s $ 3-118;&lt;BR /&gt;
 datalines; &lt;BR /&gt;
 1 prg-code,main,IT-Hardware,Ins,Main,Non_IT- ,WOrk-Hardwrk,giveup,main,doit, -Nowork,ceo-cash,main,user,repair,nonit,&lt;BR /&gt;
 run;&lt;BR /&gt;
&lt;BR /&gt;
LOGIC :I WANT TO MOVE IT IN TO ANOHTER ROW BASED ON "- "(HI FUN) BEFORE HIFUN FIRST COMMA .&lt;BR /&gt;
&lt;BR /&gt;
i wnat it in data set a2 as&lt;BR /&gt;
&lt;BR /&gt;
output:&lt;BR /&gt;
&lt;BR /&gt;
1  prg-code,main&lt;BR /&gt;
1 IT-Hardware,Ins,Main&lt;BR /&gt;
1 Non_IT-&lt;BR /&gt;
1 WOrk-Hardwrk,giveup,main,doit&lt;BR /&gt;
1            -Nowork&lt;BR /&gt;
1  ceo-cash,main,user,repair,nonit</description>
      <pubDate>Mon, 30 May 2011 06:53:53 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Reg-Moving-to-other-based-on/m-p/71091#M20510</guid>
      <dc:creator>sas_</dc:creator>
      <dc:date>2011-05-30T06:53:53Z</dc:date>
    </item>
    <item>
      <title>Re: Reg-Moving to other based on -</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Reg-Moving-to-other-based-on/m-p/71092#M20511</link>
      <description>Hi.&lt;BR /&gt;
What is your logic? How to split this long string ? &lt;BR /&gt;
What is the rule.&lt;BR /&gt;
&lt;BR /&gt;
Ksharp</description>
      <pubDate>Mon, 30 May 2011 11:11:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Reg-Moving-to-other-based-on/m-p/71092#M20511</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2011-05-30T11:11:16Z</dc:date>
    </item>
    <item>
      <title>Re: Reg-Moving to other based on -</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Reg-Moving-to-other-based-on/m-p/71093#M20512</link>
      <description>Hello Sas_,&lt;BR /&gt;
&lt;BR /&gt;
This is a solution:&lt;BR /&gt;
[pre]&lt;BR /&gt;
data i; &lt;BR /&gt;
  input id s $ 3-118;&lt;BR /&gt;
  datalines; &lt;BR /&gt;
1 prg-code,main,IT-Hardware,Ins,Main,Non_IT- ,WOrk-Hardwrk,giveup,main,doit, -Nowork,ceo-cash,main,user,repair,nonit,&lt;BR /&gt;
run;&lt;BR /&gt;
data t;&lt;BR /&gt;
  set i; &lt;BR /&gt;
  length t $116;&lt;BR /&gt;
  do until (t = ""); &lt;BR /&gt;
    i+1;&lt;BR /&gt;
    t=SCAN(s,i,",");&lt;BR /&gt;
    if SCAN(t,1,"-") NE t then j+1;&lt;BR /&gt;
    if t NE "" then output;&lt;BR /&gt;
  end;&lt;BR /&gt;
run;&lt;BR /&gt;
data r;&lt;BR /&gt;
  retain id r;&lt;BR /&gt;
  set t;&lt;BR /&gt;
  if FIRST.j then r=t;&lt;BR /&gt;
  else r=CATS(r,",",t);&lt;BR /&gt;
  if LAST.j then output;&lt;BR /&gt;
  by j;&lt;BR /&gt;
  keep id r;&lt;BR /&gt;
run;&lt;BR /&gt;
[/pre]&lt;BR /&gt;
Sincerely,&lt;BR /&gt;
SPR</description>
      <pubDate>Mon, 30 May 2011 16:09:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Reg-Moving-to-other-based-on/m-p/71093#M20512</guid>
      <dc:creator>SPR</dc:creator>
      <dc:date>2011-05-30T16:09:09Z</dc:date>
    </item>
    <item>
      <title>Re: Reg-Moving to other based on -</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Reg-Moving-to-other-based-on/m-p/71094#M20513</link>
      <description>OK.Be honest. It is more complicated than I imaged.&lt;BR /&gt;
[pre]&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
data a(keep= id ss  where=(ss is not missing));&lt;BR /&gt;
input id s $ 3-118;&lt;BR /&gt;
length ss $ 50;&lt;BR /&gt;
retain ss;&lt;BR /&gt;
i=1; _s=scan(s,1,',');&lt;BR /&gt;
do while(not missing(_s));&lt;BR /&gt;
 if findc(_s,'-')  then do;output;call missing(ss);end;&lt;BR /&gt;
 ss=catx(',',ss,_s);&lt;BR /&gt;
 i+1;&lt;BR /&gt;
 _s=scan(s,i,',');&lt;BR /&gt;
 if missing(_s) then output;&lt;BR /&gt;
end;&lt;BR /&gt;
call missing(ss);&lt;BR /&gt;
datalines;&lt;BR /&gt;
1 prg-code,main,IT-Hardware,Ins,Main,Non_IT- ,WOrk-Hardwrk,giveup,main,doit, -Nowork,ceo-cash,main,user,repair,nonit,&lt;BR /&gt;
2 prgcode,main,IT-Hardware,Ins,Main,Non_IT- ,WOrk-Hardwrk,giveup,main,doit, -Nowork,ceo-cash,main,user,repair,non-it,&lt;BR /&gt;
3 prg-code,main,IT-Hardware,Ins,Main,Non_IT- ,WOrk-Hardwrk,giveup,main,doit, -Nowork,ceo-cash,main,user,repair,non-it,&lt;BR /&gt;
run;&lt;BR /&gt;
&lt;BR /&gt;
[/pre]&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
Ksharp</description>
      <pubDate>Tue, 31 May 2011 03:07:25 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Reg-Moving-to-other-based-on/m-p/71094#M20513</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2011-05-31T03:07:25Z</dc:date>
    </item>
    <item>
      <title>Re: Reg-Moving to other based on -</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Reg-Moving-to-other-based-on/m-p/71095#M20514</link>
      <description>Another solution.&lt;BR /&gt;
[pre]&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
data a;&lt;BR /&gt;
input id s $ 3-118;&lt;BR /&gt;
datalines;&lt;BR /&gt;
1 prg-code,main,IT-Hardware,Ins,Main,Non_IT- ,WOrk-Hardwrk,giveup,main,doit, -Nowork,ceo-cash,main,user,repair,nonit,&lt;BR /&gt;
2 prgcode,main,IT-Hardware,Ins,Main,Non_IT- ,WOrk-Hardwrk,giveup,main,doit, -Nowork,ceo-cash,main,user,repair,non-it,&lt;BR /&gt;
3 prg-code,main,IT-Hardware,Ins,Main,Non_IT- ,WOrk-Hardwrk,giveup,main,doit, -Nowork,ceo-cash,main,user,repair,non-it,&lt;BR /&gt;
;&lt;BR /&gt;
run;&lt;BR /&gt;
data temp(drop=s i);&lt;BR /&gt;
 set a;&lt;BR /&gt;
 if id ne lag(id) then count+1;&lt;BR /&gt;
 i=1;ss=scan(s,i,',');&lt;BR /&gt;
 do while(not missing(ss));&lt;BR /&gt;
 if findc(ss,'-') then count+1;&lt;BR /&gt;
  output;&lt;BR /&gt;
  i+1;&lt;BR /&gt;
  ss=scan(s,i,',');&lt;BR /&gt;
 end;&lt;BR /&gt;
run;&lt;BR /&gt;
data want;&lt;BR /&gt;
 set temp;&lt;BR /&gt;
 by count notsorted;&lt;BR /&gt;
 length s $ 100;&lt;BR /&gt;
 retain s;&lt;BR /&gt;
 if first.count then call missing(s);&lt;BR /&gt;
 s=catx(',',s,ss);&lt;BR /&gt;
 if last.count then output;&lt;BR /&gt;
 drop ss count;&lt;BR /&gt;
run;&lt;BR /&gt;
  &lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
[/pre]&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
Ksharp</description>
      <pubDate>Tue, 31 May 2011 03:47:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Reg-Moving-to-other-based-on/m-p/71095#M20514</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2011-05-31T03:47:59Z</dc:date>
    </item>
  </channel>
</rss>

