<?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 Simple rearrangment with Proc Transpose in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Simple-rearrangment-with-Proc-Transpose/m-p/926631#M364652</link>
    <description>&lt;P&gt;I'm trying to format a frequencies output dataset. The data looks like this:&lt;/P&gt;
&lt;TABLE border="1" width="100%"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="33.333333333333336%"&gt;varname&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;COUNT&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;PERCENT&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="33.333333333333336%"&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;20&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;.200000000&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="33.333333333333336%"&gt;0&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;50&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;.500000000&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="33.333333333333336%"&gt;1&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;30&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;.300000000&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I want it to look like this:&lt;/P&gt;
&lt;TABLE border="1" width="100%"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="20%"&gt;_NAME_&lt;/TD&gt;
&lt;TD width="20%"&gt;0&lt;/TD&gt;
&lt;TD width="20%"&gt;PERCENT_0&lt;/TD&gt;
&lt;TD width="20%"&gt;1&lt;/TD&gt;
&lt;TD width="10%"&gt;PERCENT_1&lt;/TD&gt;
&lt;TD width="5%"&gt;missing&lt;/TD&gt;
&lt;TD width="5%"&gt;PERCENT_m&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="20%"&gt;varname&lt;/TD&gt;
&lt;TD width="20%"&gt;50&lt;/TD&gt;
&lt;TD width="20%"&gt;.50&lt;/TD&gt;
&lt;TD width="20%"&gt;30&lt;/TD&gt;
&lt;TD width="10%"&gt;.30&lt;/TD&gt;
&lt;TD width="5%"&gt;20&lt;/TD&gt;
&lt;TD width="5%"&gt;.20&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Current code:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;PROC TRANSPOSE data=have out=want;
	VAR varname;
	BY COUNT PERCENT; 
RUN;&lt;/CODE&gt;&lt;/PRE&gt;</description>
    <pubDate>Wed, 01 May 2024 16:31:39 GMT</pubDate>
    <dc:creator>Wolverine</dc:creator>
    <dc:date>2024-05-01T16:31:39Z</dc:date>
    <item>
      <title>Simple rearrangment with Proc Transpose</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Simple-rearrangment-with-Proc-Transpose/m-p/926631#M364652</link>
      <description>&lt;P&gt;I'm trying to format a frequencies output dataset. The data looks like this:&lt;/P&gt;
&lt;TABLE border="1" width="100%"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="33.333333333333336%"&gt;varname&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;COUNT&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;PERCENT&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="33.333333333333336%"&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;20&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;.200000000&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="33.333333333333336%"&gt;0&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;50&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;.500000000&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="33.333333333333336%"&gt;1&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;30&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;.300000000&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I want it to look like this:&lt;/P&gt;
&lt;TABLE border="1" width="100%"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="20%"&gt;_NAME_&lt;/TD&gt;
&lt;TD width="20%"&gt;0&lt;/TD&gt;
&lt;TD width="20%"&gt;PERCENT_0&lt;/TD&gt;
&lt;TD width="20%"&gt;1&lt;/TD&gt;
&lt;TD width="10%"&gt;PERCENT_1&lt;/TD&gt;
&lt;TD width="5%"&gt;missing&lt;/TD&gt;
&lt;TD width="5%"&gt;PERCENT_m&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="20%"&gt;varname&lt;/TD&gt;
&lt;TD width="20%"&gt;50&lt;/TD&gt;
&lt;TD width="20%"&gt;.50&lt;/TD&gt;
&lt;TD width="20%"&gt;30&lt;/TD&gt;
&lt;TD width="10%"&gt;.30&lt;/TD&gt;
&lt;TD width="5%"&gt;20&lt;/TD&gt;
&lt;TD width="5%"&gt;.20&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Current code:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;PROC TRANSPOSE data=have out=want;
	VAR varname;
	BY COUNT PERCENT; 
RUN;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Wed, 01 May 2024 16:31:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Simple-rearrangment-with-Proc-Transpose/m-p/926631#M364652</guid>
      <dc:creator>Wolverine</dc:creator>
      <dc:date>2024-05-01T16:31:39Z</dc:date>
    </item>
    <item>
      <title>Re: Simple rearrangment with Proc Transpose</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Simple-rearrangment-with-Proc-Transpose/m-p/926632#M364653</link>
      <description>&lt;P&gt;Do you want this wide arrangement of the data to produce a report? If so, leave the data un-transposed and use PROC REPORT which will give you a wide report on the un-transposed data.&lt;/P&gt;</description>
      <pubDate>Wed, 01 May 2024 16:36:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Simple-rearrangment-with-Proc-Transpose/m-p/926632#M364653</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2024-05-01T16:36:05Z</dc:date>
    </item>
    <item>
      <title>Re: Simple rearrangment with Proc Transpose</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Simple-rearrangment-with-Proc-Transpose/m-p/926637#M364658</link>
      <description>&lt;P&gt;Yes, I'm trying to create a table with about 10 variables. My plan was to transpose the Proc Freq output from each variable and then combine them into a single dataset.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I've never used Proc Report to do something like this and I'm not finding any similar examples online, so I could use some guidance.&lt;/P&gt;</description>
      <pubDate>Wed, 01 May 2024 16:49:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Simple-rearrangment-with-Proc-Transpose/m-p/926637#M364658</guid>
      <dc:creator>Wolverine</dc:creator>
      <dc:date>2024-05-01T16:49:57Z</dc:date>
    </item>
    <item>
      <title>Re: Simple rearrangment with Proc Transpose</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Simple-rearrangment-with-Proc-Transpose/m-p/926647#M364665</link>
      <description>Are all the variables using 0/1/missing?</description>
      <pubDate>Wed, 01 May 2024 17:10:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Simple-rearrangment-with-Proc-Transpose/m-p/926647#M364665</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2024-05-01T17:10:41Z</dc:date>
    </item>
    <item>
      <title>Re: Simple rearrangment with Proc Transpose</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Simple-rearrangment-with-Proc-Transpose/m-p/926648#M364666</link>
      <description>&lt;LI-SPOILER&gt;
&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/13879"&gt;@Reeza&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;Are all the variables using 0/1/missing?&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
Yes&lt;/LI-SPOILER&gt;</description>
      <pubDate>Wed, 01 May 2024 17:12:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Simple-rearrangment-with-Proc-Transpose/m-p/926648#M364666</guid>
      <dc:creator>Wolverine</dc:creator>
      <dc:date>2024-05-01T17:12:22Z</dc:date>
    </item>
    <item>
      <title>Re: Simple rearrangment with Proc Transpose</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Simple-rearrangment-with-Proc-Transpose/m-p/926649#M364667</link>
      <description>&lt;P&gt;Example using SASHELP.CLASS&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc freq data=sashelp.class;
    tables sex/noprint missing out=percents;
run;        
proc report data=percents;
    columns sex,(count percent);
    define sex/across missing;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The missing is not needed for variable SEX, but your example does have missings, that's why I put it in there.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Important concept: transpose to a wide data set is rarely useful, it makes your programming work HARDER. Why? Because almost every SAS data handling PROC expects long data sets, and doesn't work well (if at all) on wide data sets.&lt;/P&gt;</description>
      <pubDate>Wed, 01 May 2024 17:17:44 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Simple-rearrangment-with-Proc-Transpose/m-p/926649#M364667</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2024-05-01T17:17:44Z</dc:date>
    </item>
    <item>
      <title>Re: Simple rearrangment with Proc Transpose</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Simple-rearrangment-with-Proc-Transpose/m-p/926661#M364672</link>
      <description>&lt;P&gt;More cumbersome than needed I'm sure here.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
    do j=1 to 100;
        array value(10);

        do i=1 to 10;
            value(i)=rand('bernoulli', 0.4);
            _missing=rand('bernoulli', 0.05);

            if _missing=1 then
                value(i)=.;
        end;
        output;
    end;
    keep j value1-value10;
run;

ods output summary=part1;

proc means data=have stackods N NMISS SUM;
    var value1-value10;
run;

data want (keep=variable N_0 percent_0 N_1 percent_1 NMISS percent_missing);
    length variable $32. N_0 percent_0 N_1 percent_1 NMISS percent_missing 8.;
    set part1;
    totalobs=NMISS+N;
    N_0=totalobs-sum-NMISS;
    N_1=sum;
    percent_0=N_0/totalobs;
    percent_1=N_1/totalobs;
    percent_missing=nmiss/totalobs;
    ;
    format percent: percent12.2;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/43822"&gt;@Wolverine&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;I'm trying to format a frequencies output dataset. The data looks like this:&lt;/P&gt;
&lt;TABLE border="1" width="100%"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="33.333333333333336%"&gt;varname&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;COUNT&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;PERCENT&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="33.333333333333336%"&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;20&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;.200000000&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="33.333333333333336%"&gt;0&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;50&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;.500000000&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="33.333333333333336%"&gt;1&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;30&lt;/TD&gt;
&lt;TD width="33.333333333333336%"&gt;.300000000&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I want it to look like this:&lt;/P&gt;
&lt;TABLE border="1" width="100%"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="20%"&gt;_NAME_&lt;/TD&gt;
&lt;TD width="20%"&gt;0&lt;/TD&gt;
&lt;TD width="20%"&gt;PERCENT_0&lt;/TD&gt;
&lt;TD width="20%"&gt;1&lt;/TD&gt;
&lt;TD width="10%"&gt;PERCENT_1&lt;/TD&gt;
&lt;TD width="5%"&gt;missing&lt;/TD&gt;
&lt;TD width="5%"&gt;PERCENT_m&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="20%"&gt;varname&lt;/TD&gt;
&lt;TD width="20%"&gt;50&lt;/TD&gt;
&lt;TD width="20%"&gt;.50&lt;/TD&gt;
&lt;TD width="20%"&gt;30&lt;/TD&gt;
&lt;TD width="10%"&gt;.30&lt;/TD&gt;
&lt;TD width="5%"&gt;20&lt;/TD&gt;
&lt;TD width="5%"&gt;.20&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Current code:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;PROC TRANSPOSE data=have out=want;
	VAR varname;
	BY COUNT PERCENT; 
RUN;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 01 May 2024 17:49:25 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Simple-rearrangment-with-Proc-Transpose/m-p/926661#M364672</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2024-05-01T17:49:25Z</dc:date>
    </item>
  </channel>
</rss>

