[prev in list] [next in list] [prev in thread] [next in thread]
List: sas-l
Subject: Re: Expand records based on variable value
From: Su <hschcs () GMAIL ! COM>
Date: 2023-01-12 16:47:19
Message-ID: CAGYhWHQZCDYehph=0gLdqCWFNrWNqYNWt-PoXaoocotss6dDiA () mail ! gmail ! com
[Download RAW message or body]
Thank you Bartosz Jabłoński and Retired Mainframer.
But both the solutions worked perfectly. Sorry I couldn't respond sooner.
Thanks again,
Jess
On Wed, Jan 11, 2023 at 5:17 PM Retired Mainframer <
00000fdaa76f2a18-dmarc-request@listserv.uga.edu> wrote:
> Try something along the lines of
>
> Data want
>
> Set have
>
> Keep pid var1 var2
>
> Var2 = var1
>
> Count = countw(var2, , ‘dko')
>
> Do (i=1 to count)
>
> Var1 = scan(var2, I, , ‘dko')
>
> Output
>
> End
>
> run
>
>
>
> *From:* SAS(r) Discussion <SAS-L@LISTSERV.UGA.EDU> *On Behalf Of *Su
> *Sent:* Tuesday, January 10, 2023 10:33 AM
> *To:* SAS-L@LISTSERV.UGA.EDU
> *Subject:* Expand records based on variable value
>
>
>
> Hi,
>
>
>
> Need some sas programming help, have a dataset named 'Have' and I need
> 'Want' as shown below. It is a CM data and need some transformation of it.
>
>
>
> * Have:*
>
> pid var1
>
> 1 2,3,4
>
> 1 5
>
> 1 6
>
> 2 5,6,7,8
>
> 2 9
>
> 2 10
>
>
>
> *Want:*
>
>
>
> pid var1 var2
>
> 1 2 2,3,4
>
> 1 3 2,3,4
>
> 1 4 2,3,4
>
> 1 5 5
>
> 1 6 6
>
> 2 5 5,6,7,8
>
> 2 6 5,6,7,8
>
> 2 7 5,6,7,8
>
> 2 8 5,6,7,8
>
> 2 9 9
>
> 2 10 10
>
>
>
> What I tried:
>
>
>
> Used scan function and separated the values and created separate datasets
> (Ex: dat1, dat2, dat3) and set them back to the original dataset but unable
> to get the desired result.
>
>
>
> Thanks,
>
> Jess
>
>
>
[Attachment #3 (text/html)]
<div dir="ltr">Thank you Bartosz Jabłoński and Retired \
Mainframer.<div><br></div><div>But both the solutions worked perfectly. Sorry I \
couldn't respond sooner. </div><div><br></div><div>Thanks \
again,</div><div>Jess<br><div><br></div><div><br></div></div></div><br><div \
class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Jan 11, 2023 at 5:17 PM \
Retired Mainframer <<a \
href="mailto:00000fdaa76f2a18-dmarc-request@listserv.uga.edu">00000fdaa76f2a18-dmarc-request@listserv.uga.edu</a>> \
wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px \
0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div \
class="msg-1320029140660368238"><div lang="EN-US" style="overflow-wrap: \
break-word;"><div class="m_-1320029140660368238WordSection1"><p \
class="MsoNormal"><font size="3" face="Times New Roman"><span \
style="font-size:12pt;font-family:"Times New Roman",serif">Try something \
along the lines of<u></u><u></u></span></font></p><p class="MsoNormal"><font size="3" \
face="Times New Roman"><span style="font-size:12pt;font-family:"Times New \
Roman",serif">Data want<u></u><u></u></span></font></p><p \
class="MsoNormal"><font size="3" face="Times New Roman"><span \
style="font-size:12pt;font-family:"Times New Roman",serif"><span> \
</span>Set have<u></u><u></u></span></font></p><p class="MsoNormal"><font size="3" \
face="Times New Roman"><span style="font-size:12pt;font-family:"Times New \
Roman",serif"><span> </span>Keep pid var1 \
var2<u></u><u></u></span></font></p><p class="MsoNormal"><font size="3" face="Times \
New Roman"><span style="font-size:12pt;font-family:"Times New \
Roman",serif"><span> </span>Var2 = var1<u></u><u></u></span></font></p><p \
class="MsoNormal"><font size="3" face="Times New Roman"><span \
style="font-size:12pt;font-family:"Times New Roman",serif"><span> \
</span>Count = countw(var2, , ‘dko')<u></u><u></u></span></font></p><p \
class="MsoNormal"><font size="3" face="Times New Roman"><span \
style="font-size:12pt;font-family:"Times New Roman",serif"><span> \
</span>Do (i=1 to count)<u></u><u></u></span></font></p><p class="MsoNormal"><font \
size="3" face="Times New Roman"><span style="font-size:12pt;font-family:"Times \
New Roman",serif"><span> </span><span> </span>Var1 = scan(var2, I, \
, ‘dko')<u></u><u></u></span></font></p><p class="MsoNormal"><font size="3" \
face="Times New Roman"><span style="font-size:12pt;font-family:"Times New \
Roman",serif"><span> </span><span> \
</span>Output<u></u><u></u></span></font></p><p class="MsoNormal"><font size="3" \
face="Times New Roman"><span style="font-size:12pt;font-family:"Times New \
Roman",serif"><span> </span>End<u></u><u></u></span></font></p><p \
class="MsoNormal"><font size="3" face="Times New Roman"><span \
style="font-size:12pt;font-family:"Times New \
Roman",serif">run<u></u><u></u></span></font></p><p class="MsoNormal"><font \
size="3" face="Times New Roman"><span style="font-size:12pt;font-family:"Times \
New Roman",serif"><u></u> <u></u></span></font></p><div \
style="border-right:none;border-bottom:none;border-left:none;border-top:1pt solid \
rgb(225,225,225);padding:3pt 0in 0in"><p class="MsoNormal"><b><font size="2" \
face="Calibri"><span \
style="font-size:11pt;font-weight:bold">From:</span></font></b><span> SAS(r) \
Discussion <<a href="mailto:SAS-L@LISTSERV.UGA.EDU" \
target="_blank">SAS-L@LISTSERV.UGA.EDU</a>> <b><span style="font-weight:bold">On \
Behalf Of </span></b>Su<br><b><span style="font-weight:bold">Sent:</span></b> \
Tuesday, January 10, 2023 10:33 AM<br><b><span \
style="font-weight:bold">To:</span></b> <a href="mailto:SAS-L@LISTSERV.UGA.EDU" \
target="_blank">SAS-L@LISTSERV.UGA.EDU</a><br><b><span \
style="font-weight:bold">Subject:</span></b> Expand records based on variable \
value<u></u><u></u></span></p></div><p class="MsoNormal"><font size="2" \
face="Calibri"><span style="font-size:11pt"><u></u> <u></u></span></font></p><div><p \
class="MsoNormal"><font size="2" face="Calibri"><span \
style="font-size:11pt">Hi,<u></u><u></u></span></font></p><div><p \
class="MsoNormal"><font size="2" face="Calibri"><span style="font-size:11pt"><u></u> \
<u></u></span></font></p></div><div><p class="MsoNormal"><font size="2" \
face="Calibri"><span style="font-size:11pt">Need some sas programming help, have a \
dataset named 'Have' and I need 'Want' as shown below. It is a CM \
data and need some transformation of it.<u></u><u></u></span></font></p><div><p \
class="MsoNormal"><font size="2" face="Calibri"><span style="font-size:11pt"><u></u> \
<u></u></span></font></p></div><div><p class="MsoNormal" \
style="background-image:initial;background-position:initial;background-size:initial;ba \
ckground-repeat:initial;background-origin:initial;background-clip:initial"><b><u><font \
size="3" face="Arial"><span \
style="font-size:12pt;font-family:Arial,sans-serif;font-weight:bold"> \
Have:</span></font></u></b><u></u><u></u></p><p class="MsoNormal"><font size="3" \
face="Arial"><span style="font-size:12pt;font-family:Arial,sans-serif">pid var1 \
</span></font><u></u><u></u></p><p class="MsoNormal"><font size="3" \
face="Arial"><span style="font-size:12pt;font-family:Arial,sans-serif">1 \
2,3,4</span></font><u></u><u></u></p><p class="MsoNormal"><font size="3" \
face="Arial"><span style="font-size:12pt;font-family:Arial,sans-serif">1 \
5</span></font><u></u><u></u></p><p class="MsoNormal"><font size="3" \
face="Arial"><span style="font-size:12pt;font-family:Arial,sans-serif">1 \
6</span></font><u></u><u></u></p><p class="MsoNormal"><font size="3" \
face="Arial"><span style="font-size:12pt;font-family:Arial,sans-serif">2 \
5,6,7,8</span></font><u></u><u></u></p><p class="MsoNormal"><font size="3" \
face="Arial"><span style="font-size:12pt;font-family:Arial,sans-serif">2 \
9</span></font><u></u><u></u></p><p class="MsoNormal"><font size="3" \
face="Arial"><span style="font-size:12pt;font-family:Arial,sans-serif">2 \
10</span></font><u></u><u></u></p></div><div><p class="MsoNormal"><font size="2" \
face="Calibri"><span style="font-size:11pt"><u></u> \
<u></u></span></font></p></div><div><p class="MsoNormal"><b><u><font size="3" \
face="Arial"><span style="font-size:12pt;font-family:Arial,sans-serif;font-weight:bold">Want</span></font>:</u></b><u></u><u></u></p></div><div><p \
class="MsoNormal"><font size="2" face="Calibri"><span style="font-size:11pt"><u></u> \
<u></u></span></font></p></div><div><p class="MsoNormal" \
style="background-image:initial;background-position:initial;background-size:initial;background-repeat:initial;background-origin:initial;background-clip:initial"><font \
size="3" face="Arial"><span style="font-size:12pt;font-family:Arial,sans-serif">pid \
var1 var2 </span></font><u></u><u></u></p><p class="MsoNormal" \
style="background-image:initial;background-position:initial;background-size:initial;background-repeat:initial;background-origin:initial;background-clip:initial"><font \
size="3" face="Arial"><span style="font-size:12pt;font-family:Arial,sans-serif">1 \
2 2,3,4</span></font><u></u><u></u></p><p class="MsoNormal" \
style="background-image:initial;background-position:initial;background-size:initial;background-repeat:initial;background-origin:initial;background-clip:initial"><font \
size="3" face="Arial"><span style="font-size:12pt;font-family:Arial,sans-serif">1 \
3 2,3,4</span></font><u></u><u></u></p><p class="MsoNormal" \
style="background-image:initial;background-position:initial;background-size:initial;background-repeat:initial;background-origin:initial;background-clip:initial"><font \
size="3" face="Arial"><span style="font-size:12pt;font-family:Arial,sans-serif">1 \
4 2,3,4</span></font><u></u><u></u></p><p class="MsoNormal" \
style="background-image:initial;background-position:initial;background-size:initial;background-repeat:initial;background-origin:initial;background-clip:initial"><font \
size="3" face="Arial"><span style="font-size:12pt;font-family:Arial,sans-serif">1 \
5 5</span></font><u></u><u></u></p><p class="MsoNormal" \
style="background-image:initial;background-position:initial;background-size:initial;background-repeat:initial;background-origin:initial;background-clip:initial"><font \
size="3" face="Arial"><span style="font-size:12pt;font-family:Arial,sans-serif">1 \
6 6</span></font><u></u><u></u></p><p class="MsoNormal" \
style="background-image:initial;background-position:initial;background-size:initial;background-repeat:initial;background-origin:initial;background-clip:initial"><font \
size="3" face="Arial"><span style="font-size:12pt;font-family:Arial,sans-serif">2 \
5 5,6,7,8</span></font><u></u><u></u></p><p class="MsoNormal" \
style="background-image:initial;background-position:initial;background-size:initial;background-repeat:initial;background-origin:initial;background-clip:initial"><font \
size="3" face="Arial"><span style="font-size:12pt;font-family:Arial,sans-serif">2 \
6 5,6,7,8</span></font><u></u><u></u></p><p class="MsoNormal" \
style="background-image:initial;background-position:initial;background-size:initial;background-repeat:initial;background-origin:initial;background-clip:initial"><font \
size="3" face="Arial"><span style="font-size:12pt;font-family:Arial,sans-serif">2 \
7 5,6,7,8</span></font><u></u><u></u></p><p class="MsoNormal" \
style="background-image:initial;background-position:initial;background-size:initial;background-repeat:initial;background-origin:initial;background-clip:initial"><font \
size="3" face="Arial"><span style="font-size:12pt;font-family:Arial,sans-serif">2 \
8 5,6,7,8</span></font><u></u><u></u></p><p class="MsoNormal" \
style="background-image:initial;background-position:initial;background-size:initial;background-repeat:initial;background-origin:initial;background-clip:initial"><font \
size="3" face="Arial"><span style="font-size:12pt;font-family:Arial,sans-serif">2 \
9 9</span></font><u></u><u></u></p><p class="MsoNormal" \
style="background-image:initial;background-position:initial;background-size:initial;background-repeat:initial;background-origin:initial;background-clip:initial"><font \
size="3" face="Arial"><span style="font-size:12pt;font-family:Arial,sans-serif">2 \
10 10</span></font><u></u><u></u></p></div><div><p class="MsoNormal"><font \
size="2" face="Calibri"><span style="font-size:11pt"><u></u> \
<u></u></span></font></p></div><div><p class="MsoNormal"><font size="2" \
face="Calibri"><span style="font-size:11pt">What I \
tried:<u></u><u></u></span></font></p></div><div><p class="MsoNormal"><font size="2" \
face="Calibri"><span style="font-size:11pt"><u></u> \
<u></u></span></font></p></div><div><p class="MsoNormal"><font size="2" \
face="Calibri"><span style="font-size:11pt">Used scan function and separated the \
values and created separate datasets (Ex: dat1, dat2, dat3) and set them back to the \
original dataset but unable to get the desired \
result.<u></u><u></u></span></font></p></div><div><p class="MsoNormal"><font size="2" \
face="Calibri"><span style="font-size:11pt"><u></u> \
<u></u></span></font></p></div><div><p class="MsoNormal"><font size="2" \
face="Calibri"><span \
style="font-size:11pt">Thanks,<u></u><u></u></span></font></p></div><div><p \
class="MsoNormal"><font size="2" face="Calibri"><span \
style="font-size:11pt">Jess<u></u><u></u></span></font></p></div><div><p \
class="MsoNormal"><font size="2" face="Calibri"><span style="font-size:11pt"><u></u> \
<u></u></span></font></p></div></div></div></div></div></div></blockquote></div>
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic