<?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: How to remove columns with same entries in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/How-to-remove-columns-with-same-entries/m-p/239356#M308798</link>
    <description>Problem is that I have lot more variables,</description>
    <pubDate>Tue, 15 Dec 2015 15:27:37 GMT</pubDate>
    <dc:creator>lalohg</dc:creator>
    <dc:date>2015-12-15T15:27:37Z</dc:date>
    <item>
      <title>How to remove columns with same entries</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-remove-columns-with-same-entries/m-p/239245#M308794</link>
      <description>&lt;P&gt;Hi there,&lt;/P&gt;
&lt;P&gt;I wonder if someone can help me.&lt;/P&gt;
&lt;P&gt;I have a data set with several columns and would like to get rid of those columns with duplicated entries like the example below&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE width="526"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="80"&gt;I have a data set:&lt;/TD&gt;
&lt;TD width="80"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="80"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="80"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="80"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="126"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;id&lt;/TD&gt;
&lt;TD&gt;a&lt;/TD&gt;
&lt;TD&gt;b&lt;/TD&gt;
&lt;TD&gt;c&lt;/TD&gt;
&lt;TD&gt;d&lt;/TD&gt;
&lt;TD&gt;e&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;blue&lt;/TD&gt;
&lt;TD&gt;blue&lt;/TD&gt;
&lt;TD&gt;blue&lt;/TD&gt;
&lt;TD&gt;blue&lt;/TD&gt;
&lt;TD&gt;red&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;white&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;white&lt;/TD&gt;
&lt;TD&gt;yellow&lt;/TD&gt;
&lt;TD&gt;red&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;grey&lt;/TD&gt;
&lt;TD&gt;grey&lt;/TD&gt;
&lt;TD&gt;black&lt;/TD&gt;
&lt;TD&gt;black&lt;/TD&gt;
&lt;TD&gt;red&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4&lt;/TD&gt;
&lt;TD&gt;orange&lt;/TD&gt;
&lt;TD&gt;orange&lt;/TD&gt;
&lt;TD&gt;orange&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;5&lt;/TD&gt;
&lt;TD&gt;brown&lt;/TD&gt;
&lt;TD&gt;orange&lt;/TD&gt;
&lt;TD&gt;brown&lt;/TD&gt;
&lt;TD&gt;white&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;brown&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;We would llike to remove repeated columns by patient so the data set will look like:&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;id&lt;/TD&gt;
&lt;TD&gt;a&lt;/TD&gt;
&lt;TD&gt;b&lt;/TD&gt;
&lt;TD&gt;c&lt;/TD&gt;
&lt;TD&gt;d&lt;/TD&gt;
&lt;TD&gt;e&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;blue&lt;/TD&gt;
&lt;TD&gt;red&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;white&lt;/TD&gt;
&lt;TD&gt;yellow&lt;/TD&gt;
&lt;TD&gt;red&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;grey&lt;/TD&gt;
&lt;TD&gt;black&lt;/TD&gt;
&lt;TD&gt;red&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4&lt;/TD&gt;
&lt;TD&gt;orange&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;5&lt;/TD&gt;
&lt;TD&gt;brown&lt;/TD&gt;
&lt;TD&gt;orange&lt;/TD&gt;
&lt;TD&gt;white&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;all your help will be appreciated&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thanks&lt;/P&gt;
&lt;P&gt;Eduardo.&lt;/P&gt;</description>
      <pubDate>Mon, 14 Dec 2015 20:40:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-remove-columns-with-same-entries/m-p/239245#M308794</guid>
      <dc:creator>lalohg</dc:creator>
      <dc:date>2015-12-14T20:40:04Z</dc:date>
    </item>
    <item>
      <title>Re: How to remove columns with same entries</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-remove-columns-with-same-entries/m-p/239246#M308795</link>
      <description>Transpose, remove duplicates via proc sort and re-transpose. &lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Mon, 14 Dec 2015 20:47:53 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-remove-columns-with-same-entries/m-p/239246#M308795</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2015-12-14T20:47:53Z</dc:date>
    </item>
    <item>
      <title>Re: How to remove columns with same entries</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-remove-columns-with-same-entries/m-p/239276#M308796</link>
      <description>&lt;P&gt;You can also resort to the almighty data step:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
	array t(5) $10 _temporary_;
	set have;
	array ae(5) a--e;
	call missing (of t(*));

	do i=1 to 5;
		if ae(i) not in t then
			do;
				j=sum(j,1);
				t(j)=ae(i);
			end;
	end;

	do i=1 to 5;
		ae(i)=t(i);
	end;

	drop i j;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 15 Dec 2015 01:43:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-remove-columns-with-same-entries/m-p/239276#M308796</guid>
      <dc:creator>Haikuo</dc:creator>
      <dc:date>2015-12-15T01:43:13Z</dc:date>
    </item>
    <item>
      <title>Re: How to remove columns with same entries</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-remove-columns-with-same-entries/m-p/239309#M308797</link>
      <description>&lt;P&gt;Or simple IML code :&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
infile cards expandtabs truncover;
input id	(a	b	c	d	e) ($);
cards;
1	blue	blue	blue	blue	red
2	white	. 	white	yellow	red
3	grey	grey	black	black	red
4	orange	orange	orange	 	. .
5	brown	orange	brown	white 	brown
;
run;
proc iml;
use have;
read all var {id};
read all var _char_ into x[c=vnames];
y=j(nrow(x),ncol(x),blankstr(nleng(x)));
do i=1 to nrow(x);
 temp=unique(x[i,]); 
 idx=loc(temp^=' ');
 y[i,1:ncol(idx)]=temp[,idx];
end;
print y;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 15 Dec 2015 09:55:25 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-remove-columns-with-same-entries/m-p/239309#M308797</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2015-12-15T09:55:25Z</dc:date>
    </item>
    <item>
      <title>Re: How to remove columns with same entries</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-remove-columns-with-same-entries/m-p/239356#M308798</link>
      <description>Problem is that I have lot more variables,</description>
      <pubDate>Tue, 15 Dec 2015 15:27:37 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-remove-columns-with-same-entries/m-p/239356#M308798</guid>
      <dc:creator>lalohg</dc:creator>
      <dc:date>2015-12-15T15:27:37Z</dc:date>
    </item>
    <item>
      <title>Re: How to remove columns with same entries</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-remove-columns-with-same-entries/m-p/239357#M308799</link>
      <description>Thanks Haikuo,&lt;BR /&gt;I have 36 columns not only 5, I ran what you suggested but didn't work</description>
      <pubDate>Tue, 15 Dec 2015 15:28:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-remove-columns-with-same-entries/m-p/239357#M308799</guid>
      <dc:creator>lalohg</dc:creator>
      <dc:date>2015-12-15T15:28:39Z</dc:date>
    </item>
    <item>
      <title>Re: How to remove columns with same entries</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-remove-columns-with-same-entries/m-p/239358#M308800</link>
      <description>Thanks Ksharp, my SAS licence does not include the iml procedure</description>
      <pubDate>Tue, 15 Dec 2015 15:29:29 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-remove-columns-with-same-entries/m-p/239358#M308800</guid>
      <dc:creator>lalohg</dc:creator>
      <dc:date>2015-12-15T15:29:29Z</dc:date>
    </item>
    <item>
      <title>Re: How to remove columns with same entries</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-remove-columns-with-same-entries/m-p/239435#M308801</link>
      <description>&lt;P&gt;Transpose, Remove Duplicates, Transpose again, use a data step to sort in appropriate order.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
infile cards expandtabs truncover;
input id	(a	b	c	d	e) ($);
cards;
1	blue	blue	blue	blue	red
2	white	. 	white	yellow	red
3	grey	grey	black	black	red
4	orange	orange	orange	 	. .
5	brown	orange	brown	white 	brown
;
run;

proc transpose data=have out=temp1(rename=col1=var_a_e);
by id;
var a b c d e;
run;

proc sort data=temp1 nodupkey out=temp2 (where=(var_a_e ne ""));
by id var_a_e;
run;


proc transpose data=temp2 out=temp3;
by id;
id _name_;
var var_a_e;
run;

data want;
retain id a b c d e;
set temp3;
array lett(5) $ a b c d e;
array rev(5) e d c b a;
call sortc(of rev(*));

drop _name_;
run;

proc print;run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 15 Dec 2015 21:10:44 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-remove-columns-with-same-entries/m-p/239435#M308801</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2015-12-15T21:10:44Z</dc:date>
    </item>
    <item>
      <title>Re: How to remove columns with same entries</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-remove-columns-with-same-entries/m-p/239459#M308802</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
infile cards expandtabs truncover;
input id	(a	b	c	d	e) ($);
cards;
1	blue	blue	blue	blue	red
2	white	. 	white	yellow	red
3	grey	grey	black	black	red
4	orange	orange	orange	 	. .
5	brown	orange	brown	white 	brown
;
run;


%let columns=5;  /* &amp;lt;---- */


data want;
	array t(&amp;amp;columns) $ 32 _temporary_;
	set have;
	array ae(*) $ _character_;
	call missing (of t(*));

	do i=1 to dim(ae);
		if ae(i) not in t then
			do;
				j=sum(j,1);
				t(j)=ae(i);
			end;
	end;

	do i=1 to dim(ae);
		ae(i)=t(i);
	end;

	drop i j;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Wed, 16 Dec 2015 01:12:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-remove-columns-with-same-entries/m-p/239459#M308802</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2015-12-16T01:12:05Z</dc:date>
    </item>
  </channel>
</rss>

