<?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: Split dataset (one colum - fixed length data) into columns in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Split-dataset-one-colum-fixed-length-data-into-columns/m-p/699893#M214114</link>
    <description>&lt;P&gt;And a slightly less esoteric:&lt;/P&gt;
&lt;PRE&gt;data test;
   input source $20.;
   cards;
AAABBBCCC111
AAABBBCCC222
AAABBBCCC333
;;;;

data want;
   set test;
   array c(4) $ 3;
   do i=1 to dim(c);
      c[i] = substr(source,(i-1)*3 +1, 3);
   end;
run;&lt;/PRE&gt;
&lt;P&gt;but this does require the user to know how many variables to create.&lt;/P&gt;</description>
    <pubDate>Wed, 18 Nov 2020 17:02:01 GMT</pubDate>
    <dc:creator>ballardw</dc:creator>
    <dc:date>2020-11-18T17:02:01Z</dc:date>
    <item>
      <title>Split dataset (one colum - fixed length data) into columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Split-dataset-one-colum-fixed-length-data-into-columns/m-p/699855#M214096</link>
      <description>&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;I've got a dataset (not file) which has only one column and millions of rows. This column contains a fixed length data.&lt;/P&gt;&lt;P&gt;How can I split this one column into columns according to fixed length of new columns?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;U&gt;Example:&lt;/U&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Is:&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;Dataset_1:&lt;/P&gt;&lt;P&gt;&lt;EM&gt;| Col1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; |&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;| AAABBBCCC111 |&lt;/P&gt;&lt;P&gt;| AAABBBCCC222 |&lt;/P&gt;&lt;P&gt;| AAABBBCCC333 |&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Need:&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;Dataset_2:&lt;/P&gt;&lt;P&gt;&lt;EM&gt;| Col1&lt;/EM&gt; | &lt;EM&gt;Col2&lt;/EM&gt;&amp;nbsp;| &lt;EM&gt;Col3&lt;/EM&gt; | &lt;EM&gt;Col4 |&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;| AAA | BBB | CCC | 111 |&lt;/P&gt;&lt;P&gt;| AAA | BBB | CCC | 222 |&lt;/P&gt;&lt;P&gt;| AAA | BBB | CCC | 333 |&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Piotr&lt;/P&gt;</description>
      <pubDate>Wed, 18 Nov 2020 16:02:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Split-dataset-one-colum-fixed-length-data-into-columns/m-p/699855#M214096</guid>
      <dc:creator>Peter_Wine</dc:creator>
      <dc:date>2020-11-18T16:02:04Z</dc:date>
    </item>
    <item>
      <title>Re: Split dataset (one colum - fixed length data) into columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Split-dataset-one-colum-fixed-length-data-into-columns/m-p/699859#M214097</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
    set have;
    col1_new=substr(col1,1,3);
    col2_new=substr(col1,4,3);
    /* You type the rest, I'm lazy */
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Wed, 18 Nov 2020 16:05:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Split-dataset-one-colum-fixed-length-data-into-columns/m-p/699859#M214097</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2020-11-18T16:05:07Z</dc:date>
    </item>
    <item>
      <title>Re: Split dataset (one colum - fixed length data) into columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Split-dataset-one-colum-fixed-length-data-into-columns/m-p/699871#M214102</link>
      <description>&lt;P&gt;Works, thanks.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I hoped that there is an easier method rather then typing "substring" n-times but Excel helped &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Many thanks.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Piotr&lt;/P&gt;</description>
      <pubDate>Wed, 18 Nov 2020 16:23:14 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Split-dataset-one-colum-fixed-length-data-into-columns/m-p/699871#M214102</guid>
      <dc:creator>Peter_Wine</dc:creator>
      <dc:date>2020-11-18T16:23:14Z</dc:date>
    </item>
    <item>
      <title>Re: Split dataset (one colum - fixed length data) into columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Split-dataset-one-colum-fixed-length-data-into-columns/m-p/699876#M214104</link>
      <description>&lt;P&gt;Yes, there may be an easier solution if many more columns are involved, but for the example you gave, that's the solution I would use.&lt;/P&gt;</description>
      <pubDate>Wed, 18 Nov 2020 16:33:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Split-dataset-one-colum-fixed-length-data-into-columns/m-p/699876#M214104</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2020-11-18T16:33:04Z</dc:date>
    </item>
    <item>
      <title>Re: Split dataset (one colum - fixed length data) into columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Split-dataset-one-colum-fixed-length-data-into-columns/m-p/699882#M214109</link>
      <description>&lt;P&gt;Are all the fields length 3?&amp;nbsp; This could be modified to work with fields of different length&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data test;
   input source $20.;
   cards;
AAABBBCCC111
AAABBBCCC222
AAABBBCCC333
;;;;
   run;
proc print;
   run;

data split;
   set test;
   array c[5] $3;
   pointer = addrlong(c1);
   *CALL POKELONG(source, pointer &amp;lt;, length&amp;gt; &amp;lt;, floating-point&amp;gt;);
   CALL POKELONG(source, pointer,length(source));
   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: 388px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/51795i00E896D8CF67FF7F/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>Wed, 18 Nov 2020 16:41:44 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Split-dataset-one-colum-fixed-length-data-into-columns/m-p/699882#M214109</guid>
      <dc:creator>data_null__</dc:creator>
      <dc:date>2020-11-18T16:41:44Z</dc:date>
    </item>
    <item>
      <title>Re: Split dataset (one colum - fixed length data) into columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Split-dataset-one-colum-fixed-length-data-into-columns/m-p/699893#M214114</link>
      <description>&lt;P&gt;And a slightly less esoteric:&lt;/P&gt;
&lt;PRE&gt;data test;
   input source $20.;
   cards;
AAABBBCCC111
AAABBBCCC222
AAABBBCCC333
;;;;

data want;
   set test;
   array c(4) $ 3;
   do i=1 to dim(c);
      c[i] = substr(source,(i-1)*3 +1, 3);
   end;
run;&lt;/PRE&gt;
&lt;P&gt;but this does require the user to know how many variables to create.&lt;/P&gt;</description>
      <pubDate>Wed, 18 Nov 2020 17:02:01 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Split-dataset-one-colum-fixed-length-data-into-columns/m-p/699893#M214114</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2020-11-18T17:02:01Z</dc:date>
    </item>
    <item>
      <title>Re: Split dataset (one colum - fixed length data) into columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Split-dataset-one-colum-fixed-length-data-into-columns/m-p/701516#M214826</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I just realized that using this solution I get as a result table which contains: old column and new columns.&lt;/P&gt;&lt;P&gt;So it looks that to old table new columns are added.&lt;/P&gt;&lt;P&gt;I want to keep only new columns.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;And - I don't know if it is because of above - the length of new columns is set the same as length of old column. How to change it to appropriate length.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Please remember that my dataset has&amp;nbsp;over 100 columns hence I ask to simple solution. &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Piotr&lt;/P&gt;</description>
      <pubDate>Wed, 25 Nov 2020 13:15:36 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Split-dataset-one-colum-fixed-length-data-into-columns/m-p/701516#M214826</guid>
      <dc:creator>Peter_Wine</dc:creator>
      <dc:date>2020-11-25T13:15:36Z</dc:date>
    </item>
  </channel>
</rss>

