<?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: Splitting Text into different columns with headings in SAS Procedures</title>
    <link>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496181#M72408</link>
    <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;filename FT15f001 temp;
data pair;
   infile FT15F001 dlm='{}":, ';
   input name :$32. value :32. @@;
   parmcards;
{"A123": "12", "B234": "-157.5", "C345": "1954"}
{"A123": "12", "C345": "-157.3", "d123": "1456"}
{"A123": "17", "B234": "-143.5", "C345": "1745", "D123": "1745"}
{"A123": "15", "B234": "-154.4", "C345": "998"}
;;;;
   run;
proc print;
   run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Capture.PNG" style="width: 148px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/23303iFED4C093F8F23D9A/image-size/large?v=v2&amp;amp;px=999" role="button" title="Capture.PNG" alt="Capture.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;</description>
    <pubDate>Mon, 17 Sep 2018 11:00:44 GMT</pubDate>
    <dc:creator>data_null__</dc:creator>
    <dc:date>2018-09-17T11:00:44Z</dc:date>
    <item>
      <title>Splitting Text into different columns with headings</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496138#M72404</link>
      <description>&lt;P&gt;Hello.&lt;/P&gt;&lt;P&gt;I&amp;nbsp;have a variable like below:&lt;/P&gt;&lt;P&gt;VAR&lt;/P&gt;&lt;P&gt;--------&lt;/P&gt;&lt;P&gt;{"A123": "12", "B234": "-157.5", "C345": "1954"}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I need to split it into columns with headings:&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;A123&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;SPAN&gt;B234&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt; &lt;SPAN&gt;C345&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;-------&amp;nbsp; --------&amp;nbsp; &amp;nbsp;--------&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;12&lt;/SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;SPAN&gt;-157.5&amp;nbsp; &amp;nbsp;1954&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Max number of variables is 50&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Please help to split it and to add the &lt;SPAN&gt;headings&lt;/SPAN&gt;.&lt;/P&gt;</description>
      <pubDate>Mon, 17 Sep 2018 07:35:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496138#M72404</guid>
      <dc:creator>J_J_J</dc:creator>
      <dc:date>2018-09-17T07:35:24Z</dc:date>
    </item>
    <item>
      <title>Re: Splitting Text into different columns with headings</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496142#M72405</link>
      <description>&lt;P&gt;Is that from a Json file?&amp;nbsp; It looks a bit Json like.&amp;nbsp; There are already a fair few papers and help on this:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://support.sas.com/resources/papers/proceedings17/0856-2017.pdf" target="_blank"&gt;http://support.sas.com/resources/papers/proceedings17/0856-2017.pdf&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://blogs.sas.com/content/sasdummy/2016/12/02/json-libname-engine-sas/" target="_blank"&gt;https://blogs.sas.com/content/sasdummy/2016/12/02/json-libname-engine-sas/&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If its not this, please specify where this string comes from, and why it is in that form as its not ideal.&amp;nbsp; You would then need further code to get it workable:&lt;/P&gt;
&lt;PRE&gt;data have;&lt;BR /&gt; length inter vname vvar $200;&lt;BR /&gt; str='{"A123": "12", "B234": "-157.5", "C345": "1954"}';&lt;BR /&gt; str=compress(str,'"{}');&lt;BR /&gt; do i=1 to countw(str,',');&lt;BR /&gt; inter=scan(str,i,',');&lt;BR /&gt; vname=scan(inter,1,":");&lt;BR /&gt; vvar=scan(inter,2,":");&lt;BR /&gt; output;&lt;BR /&gt; end;&lt;BR /&gt;run;&lt;BR /&gt;&lt;BR /&gt;proc transpose data=have out=want;&lt;BR /&gt; var vvar;&lt;BR /&gt; id vname;&lt;BR /&gt; idlabel vname;&lt;BR /&gt;run; &lt;/PRE&gt;
&lt;P&gt;And even that isn't very good as the numerics are not numeric etc.&lt;/P&gt;</description>
      <pubDate>Mon, 17 Sep 2018 08:03:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496142#M72405</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2018-09-17T08:03:08Z</dc:date>
    </item>
    <item>
      <title>Re: Splitting Text into different columns with headings</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496157#M72406</link>
      <description>&lt;P&gt;Thank you RW9&lt;/P&gt;&lt;P&gt;Possible that it's from&amp;nbsp;&lt;SPAN&gt;Json file, but I can't change it, because I use&amp;nbsp;the ready table which I should process.&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I&amp;nbsp;have&amp;nbsp;many rows with variables in different order and with different variable count:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;{"A123": "12", "B234": "-157.5", "C345": "1954"}&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;{"A123": "12", "C345": "-157.3", "d123": "1456"}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;{"A123": "17", "B234": "-143.5", "C345": "1745", "D123": "1745"}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;{"A123": "15", "B234": "-154.4", "C345": "998"}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 17 Sep 2018 09:13:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496157#M72406</guid>
      <dc:creator>J_J_J</dc:creator>
      <dc:date>2018-09-17T09:13:19Z</dc:date>
    </item>
    <item>
      <title>Re: Splitting Text into different columns with headings</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496159#M72407</link>
      <description>&lt;P&gt;Ah, there is that joyous word again, "can't".&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Anyway, the code I presented should work nontheless, although building a tower on bad foundations will eventually lead to total disaster.&lt;/P&gt;</description>
      <pubDate>Mon, 17 Sep 2018 09:18:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496159#M72407</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2018-09-17T09:18:07Z</dc:date>
    </item>
    <item>
      <title>Re: Splitting Text into different columns with headings</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496181#M72408</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;filename FT15f001 temp;
data pair;
   infile FT15F001 dlm='{}":, ';
   input name :$32. value :32. @@;
   parmcards;
{"A123": "12", "B234": "-157.5", "C345": "1954"}
{"A123": "12", "C345": "-157.3", "d123": "1456"}
{"A123": "17", "B234": "-143.5", "C345": "1745", "D123": "1745"}
{"A123": "15", "B234": "-154.4", "C345": "998"}
;;;;
   run;
proc print;
   run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Capture.PNG" style="width: 148px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/23303iFED4C093F8F23D9A/image-size/large?v=v2&amp;amp;px=999" role="button" title="Capture.PNG" alt="Capture.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 17 Sep 2018 11:00:44 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496181#M72408</guid>
      <dc:creator>data_null__</dc:creator>
      <dc:date>2018-09-17T11:00:44Z</dc:date>
    </item>
    <item>
      <title>Re: Splitting Text into different columns with headings</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496189#M72409</link>
      <description>&lt;P&gt;Thank you data_null_&lt;/P&gt;&lt;P&gt;I'm looking for solution&amp;nbsp;which will allow not to use parmcards, datalines etc. where you have to specifies&amp;nbsp; data.&lt;/P&gt;&lt;P&gt;Ex:&lt;/P&gt;&lt;PRE class=" language-sas"&gt;&lt;CODE class="  language-sas"&gt;&lt;SPAN class="token punctuation"&gt;{&lt;/SPAN&gt;&lt;SPAN class="token string"&gt;"A123"&lt;/SPAN&gt;: &lt;SPAN class="token string"&gt;"12"&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;,&lt;/SPAN&gt; &lt;SPAN class="token string"&gt;"B234"&lt;/SPAN&gt;: &lt;SPAN class="token string"&gt;"-157.5"&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;,&lt;/SPAN&gt; &lt;SPAN class="token string"&gt;"C345"&lt;/SPAN&gt;: &lt;SPAN class="token string"&gt;"1954"&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;}&lt;/SPAN&gt;
&lt;SPAN class="token punctuation"&gt;{&lt;/SPAN&gt;&lt;SPAN class="token string"&gt;"A123"&lt;/SPAN&gt;: &lt;SPAN class="token string"&gt;"12"&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;,&lt;/SPAN&gt; &lt;SPAN class="token string"&gt;"C345"&lt;/SPAN&gt;: &lt;SPAN class="token string"&gt;"-157.3"&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;,&lt;/SPAN&gt; &lt;SPAN class="token string"&gt;"d123"&lt;/SPAN&gt;: &lt;SPAN class="token string"&gt;"1456"&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;}&lt;/SPAN&gt;
&lt;SPAN class="token punctuation"&gt;{&lt;/SPAN&gt;&lt;SPAN class="token string"&gt;"A123"&lt;/SPAN&gt;: &lt;SPAN class="token string"&gt;"17"&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;,&lt;/SPAN&gt; &lt;SPAN class="token string"&gt;"B234"&lt;/SPAN&gt;: &lt;SPAN class="token string"&gt;"-143.5"&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;,&lt;/SPAN&gt; &lt;SPAN class="token string"&gt;"C345"&lt;/SPAN&gt;: &lt;SPAN class="token string"&gt;"1745"&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;,&lt;/SPAN&gt; &lt;SPAN class="token string"&gt;"D123"&lt;/SPAN&gt;: &lt;SPAN class="token string"&gt;"1745"&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;}&lt;/SPAN&gt;
&lt;SPAN class="token punctuation"&gt;{&lt;/SPAN&gt;&lt;SPAN class="token string"&gt;"A123"&lt;/SPAN&gt;: &lt;SPAN class="token string"&gt;"15"&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;,&lt;/SPAN&gt; &lt;SPAN class="token string"&gt;"B234"&lt;/SPAN&gt;: &lt;SPAN class="token string"&gt;"-154.4"&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;,&lt;/SPAN&gt; &lt;SPAN class="token string"&gt;"C345"&lt;/SPAN&gt;: &lt;SPAN class="token string"&gt;"998"&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;}&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 17 Sep 2018 11:21:30 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496189#M72409</guid>
      <dc:creator>J_J_J</dc:creator>
      <dc:date>2018-09-17T11:21:30Z</dc:date>
    </item>
    <item>
      <title>Re: Splitting Text into different columns with headings</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496191#M72410</link>
      <description>Is the data in a file?</description>
      <pubDate>Mon, 17 Sep 2018 11:29:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496191#M72410</guid>
      <dc:creator>data_null__</dc:creator>
      <dc:date>2018-09-17T11:29:31Z</dc:date>
    </item>
    <item>
      <title>Re: Splitting Text into different columns with headings</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496193#M72411</link>
      <description>&lt;P&gt;No, in the table on server&lt;/P&gt;</description>
      <pubDate>Mon, 17 Sep 2018 11:42:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496193#M72411</guid>
      <dc:creator>J_J_J</dc:creator>
      <dc:date>2018-09-17T11:42:12Z</dc:date>
    </item>
    <item>
      <title>Re: Splitting Text into different columns with headings</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496197#M72413</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
   input line $80.;
   id + 1;
   cards;
{"A123": "12", "B234": "-157.5", "C345": "1954"}
{"A123": "12", "C345": "-157.3", "d123": "1456"}
{"A123": "17", "B234": "-143.5", "C345": "1745", "D123": "1745"}
{"A123": "15", "B234": "-154.4", "C345": "998"}
;;;;
   run;
filename FT15f001 temp;
data pair;
   infile FT15F001 dlm='{}":, ' missover;
   input @1 @;
   do while(not eof);
      set have end=eof;
      _infile_ = line;
      input @1 @;
      do while(1);
         input name :$upcase32. value :32. @;
         if missing(name) then leave;
         output;
         end;
      end;
   parmcards;
Necessary evil
;;;;
   run;
proc print;
   run;
proc transpose data=pair out=wide(drop=_name_);
   by id;
   id name;
   var value;
   run;
proc print;
   run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Capture.PNG" style="width: 535px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/23304i03E987E82DFAABC5/image-size/large?v=v2&amp;amp;px=999" role="button" title="Capture.PNG" alt="Capture.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 17 Sep 2018 11:54:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496197#M72413</guid>
      <dc:creator>data_null__</dc:creator>
      <dc:date>2018-09-17T11:54:34Z</dc:date>
    </item>
    <item>
      <title>Re: Splitting Text into different columns with headings</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496215#M72415</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
   input line $80.;
   id + 1;
   cards4;
{"A123": "12", "B234": "-157.5", "C345": "1954"}
{"A123": "12", "C345": "-157.3", "D123": "1456"}
{"A123": "17", "B234": "-143.5", "C345": "1745", "D123": "1745"}
{"A123": "15", "B234": "-154.4", "C345": "998"}
;;;;
   run;

data temp;
 set have;
 do i=1 to countw(strip(line),',{}');
  token=scan(line,i,',{}');
  name=dequote(strip(scan(token,1,':')));
  value=dequote(strip(scan(token,2,':')));
  output;
 end;
 keep id name value;
run;
proc sort data=temp;
by id;
run;
proc transpose data=temp out=want(drop=_:);
by id;
id name;
var value;
run;

proc print;run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Mon, 17 Sep 2018 13:01:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496215#M72415</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2018-09-17T13:01:57Z</dc:date>
    </item>
    <item>
      <title>Re: Splitting Text into different columns with headings</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496467#M72420</link>
      <description>&lt;P&gt;&lt;STRONG&gt;data_null, &lt;/STRONG&gt;thanks so much! You made my day!&lt;/P&gt;</description>
      <pubDate>Tue, 18 Sep 2018 05:16:02 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496467#M72420</guid>
      <dc:creator>J_J_J</dc:creator>
      <dc:date>2018-09-18T05:16:02Z</dc:date>
    </item>
    <item>
      <title>Re: Splitting Text into different columns with headings</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496468#M72421</link>
      <description>&lt;P&gt;Ksharp, thank you!&lt;/P&gt;</description>
      <pubDate>Tue, 18 Sep 2018 05:16:37 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Splitting-Text-into-different-columns-with-headings/m-p/496468#M72421</guid>
      <dc:creator>J_J_J</dc:creator>
      <dc:date>2018-09-18T05:16:37Z</dc:date>
    </item>
  </channel>
</rss>

