<?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 select all columns given a vector of row indexes in SAS IML in SAS Studio</title>
    <link>https://communities.sas.com/t5/SAS-Studio/How-to-select-all-columns-given-a-vector-of-row-indexes-in-SAS/m-p/468537#M5693</link>
    <description>Rick, thank you SO MUCH!&lt;BR /&gt;&lt;BR /&gt;That was really helpful!&lt;BR /&gt;Yes, I didn't know that my module's variables were global, and it would probably have taken ages for me to figure this out!&lt;BR /&gt;&lt;BR /&gt;Again, thank you!</description>
    <pubDate>Thu, 07 Jun 2018 21:13:33 GMT</pubDate>
    <dc:creator>marianaalcos</dc:creator>
    <dc:date>2018-06-07T21:13:33Z</dc:date>
    <item>
      <title>How to select all columns given a vector of row indexes in SAS IML</title>
      <link>https://communities.sas.com/t5/SAS-Studio/How-to-select-all-columns-given-a-vector-of-row-indexes-in-SAS/m-p/468302#M5675</link>
      <description>&lt;P&gt;Hi there,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am writing a code to perform k-fold CV using proc iml in SAS studio.&amp;nbsp;&lt;/P&gt;&lt;P&gt;My data is stored in a 47x15 matrix, and each column here represents one Principal Component (i.e. column one is PC1 and column 15 is PC15 and I have 47 rows/obs). I want to apply linear regression and get the cross-validated MSE for 15 different models, i.e., I start with the model with only PC1 and I add&amp;nbsp;one more&amp;nbsp;PC at each iteration. For each model, I perform 5-fold CV to get the cross-validated MSE. In R, I could just use cv.lm, but since I could not find a function to perform CV inside SAS IML, I decided to code it myself.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;THE PROBLEM IS:&amp;nbsp;&lt;/STRONG&gt;I created a vector of 47 obs using sample without replacement (i.e., the 47 numbers appear in random order). From this vector I was able to create a test set index&amp;nbsp; and a training set index. I then apply this index to the model matrix X. When X has only one predictor (i.e. PC1), this works just fine and I am able to create the randomly selected test and train sets. However, when X has more than one predictor (e.g. PC1 PC2), SAS returns an ERROR message:&amp;nbsp;&lt;SPAN&gt;(execution) Invalid subscript or subscript out of range.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I spent literally hours today trying to figure this out. I included some prints in my code to help the debug, but it seems very weird to me that this is not working for more than one var.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Can someone please help?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Here's&amp;nbsp; the piece of code which is problematic ( starts in trainset=x[train_ind,];&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;)... again it's working for i=2 (one predictor) but not for i&amp;gt;2 (more than one predictor).&lt;/SPAN&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;k=5;							 /* number of cv folds*/
do i = 2 to 16;
	mse_acum=0;
	x = pcs_matrix[,2:i];
	y = pcs_matrix[,1];
	n = nrow(x);                     /* sample size         */
	aux= 1:n;						 /* vector from 1:n     */
	call randseed(1);		     /* reproducible results*/
	s = sample(aux, n, "WOR"); /* sampling without replacement */
	do j = 1 to (k-1); /* creating train and test sets and regressing */
		test_ind = s[((j-1)#ceil(n/k) + 1):(j#ceil(n/k))];
		print test_ind;
		train_ind = setdif(s,test_ind);
		print train_ind;
		&lt;STRONG&gt;trainset=x[train_ind,];
		print trainset;
		testset =x[test_ind,];
		print testset;&lt;/STRONG&gt;
		testset_y = y[test_ind];
		trainset_y = y[train_ind];
		run Regress_cv;
		mse_acum=mse_acum + mse;
	end;
	/* for the last fold since n it's not always divisible by k do:*/
	test_ind = s[((k-1)#ceil(n/k) + 1):n];
	train_ind = setdif(s,test_ind);
	testset =x[test_ind,];
	trainset=x[train_ind,];
	testset_y = y[test_ind];
	trainset_y = y[train_ind];
	run Regress_cv;
	mse_acum=mse_acum + mse;
	print mse_acum;
	r2_cross[i-1] = 1 - mse_acum#n/ssquares; 
end;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;SPAN&gt;I appreciate your help!&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 07 Jun 2018 08:49:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Studio/How-to-select-all-columns-given-a-vector-of-row-indexes-in-SAS/m-p/468302#M5675</guid>
      <dc:creator>marianaalcos</dc:creator>
      <dc:date>2018-06-07T08:49:05Z</dc:date>
    </item>
    <item>
      <title>Re: How to select all columns given a vector of row indexes in SAS IML</title>
      <link>https://communities.sas.com/t5/SAS-Studio/How-to-select-all-columns-given-a-vector-of-row-indexes-in-SAS/m-p/468336#M5678</link>
      <description>&lt;P&gt;Calling&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/13684"&gt;@Rick_SAS&lt;/a&gt;&lt;/P&gt;
&lt;P&gt;You should post it at IML forum.&lt;/P&gt;
&lt;P&gt;The following code is I wrote before for K-Fold-CV for proc logistic.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;/****** K-Fold CV ****/

%macro k_fold_cv(k=10);
ods select none;

proc surveyselect data=sashelp.heart group=&amp;amp;k out=have;
run;

%do i=1 %to &amp;amp;k ;
data training;
 set have(where=(groupid ne &amp;amp;i)) ;
run;
data test;
 set have(where=(groupid eq &amp;amp;i));
run;

ods output 
Association=native(keep=label2 nvalue2 rename=(nvalue2=native) where=(label2='c'))
ScoreFitStat=true(keep=dataset freq auc rename=(auc=true));
proc logistic data=training
 outest=est(keep=_status_ _name_) ;
 class sex;
 model status(event='Alive')=sex height weight;
 score data=test fitstat; 
run;

data score&amp;amp;i;
 merge true native est;
 retain id &amp;amp;i ;
 optimism=native-true;
run;
%end;
data k_fold_cv;
 set score1-score&amp;amp;k;
run;

ods select all;
%mend;

%k_fold_cv(k=10)








/*************************************/


%macro k_fold_cv_rep(r=1,k=10);
ods select none;
%do r=1 %to &amp;amp;r;
proc surveyselect data=sashelp.heart group=&amp;amp;k out=have;
run;

%do i=1 %to &amp;amp;k ;
data training;
 set have(where=(groupid ne &amp;amp;i)) ;
run;
data test;
 set have(where=(groupid eq &amp;amp;i));
run;

ods output 
Association=native(keep=label2 nvalue2 rename=(nvalue2=native) where=(label2='c'))
ScoreFitStat=true(keep=dataset freq auc rename=(auc=true));
proc logistic data=training
 outest=est(keep=_status_ _name_) ;
 class sex;
 model status(event='Alive')=sex height weight;
 score data=test fitstat; 
run;

data score_r&amp;amp;r._&amp;amp;i;
 merge true native est;
 retain rep &amp;amp;r id &amp;amp;i;
 optimism=native-true;
run;
%end;
%end;
data k_fold_cv_rep;
 set score_r:;
run;

ods select all;
%mend;

%k_fold_cv_rep(r=20,k=10);

/********************/
data all;
 set k_fold_cv k_fold_cv_rep indsname=indsn;
 length indsname $ 32;
 indsname=indsn;
run;
proc summary data=all nway;
 class indsname;
 var optimism;
 output out=want mean=mean lclm=lclm uclm=uclm;
run;




&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 07 Jun 2018 12:28:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Studio/How-to-select-all-columns-given-a-vector-of-row-indexes-in-SAS/m-p/468336#M5678</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2018-06-07T12:28:39Z</dc:date>
    </item>
    <item>
      <title>Re: How to select all columns given a vector of row indexes in SAS IML</title>
      <link>https://communities.sas.com/t5/SAS-Studio/How-to-select-all-columns-given-a-vector-of-row-indexes-in-SAS/m-p/468341#M5679</link>
      <description>&lt;P&gt;Please either post a runnable program and data or&amp;nbsp;post the log. that will help us determine where the error is occurring.&lt;/P&gt;</description>
      <pubDate>Thu, 07 Jun 2018 12:46:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Studio/How-to-select-all-columns-given-a-vector-of-row-indexes-in-SAS/m-p/468341#M5679</guid>
      <dc:creator>Rick_SAS</dc:creator>
      <dc:date>2018-06-07T12:46:54Z</dc:date>
    </item>
    <item>
      <title>Re: How to select all columns given a vector of row indexes in SAS IML</title>
      <link>https://communities.sas.com/t5/SAS-Studio/How-to-select-all-columns-given-a-vector-of-row-indexes-in-SAS/m-p/468502#M5690</link>
      <description>&lt;P&gt;Hi Rick,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Please check the entire code + data attached here. The problem lies on the last part (check the last proc iml; ).&lt;/P&gt;&lt;P&gt;I appreciate your help!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 07 Jun 2018 19:23:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Studio/How-to-select-all-columns-given-a-vector-of-row-indexes-in-SAS/m-p/468502#M5690</guid>
      <dc:creator>marianaalcos</dc:creator>
      <dc:date>2018-06-07T19:23:33Z</dc:date>
    </item>
    <item>
      <title>Re: How to select all columns given a vector of row indexes in SAS IML</title>
      <link>https://communities.sas.com/t5/SAS-Studio/How-to-select-all-columns-given-a-vector-of-row-indexes-in-SAS/m-p/468504#M5691</link>
      <description>&lt;P&gt;Hi Ksharp,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I&amp;nbsp;am not familiar with macros ( I started using SAS a couple of weeks ago actually).&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'll have a look to see if I can adapt to my case here!&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks a lot!&lt;/P&gt;</description>
      <pubDate>Thu, 07 Jun 2018 19:25:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Studio/How-to-select-all-columns-given-a-vector-of-row-indexes-in-SAS/m-p/468504#M5691</guid>
      <dc:creator>marianaalcos</dc:creator>
      <dc:date>2018-06-07T19:25:13Z</dc:date>
    </item>
    <item>
      <title>Re: How to select all columns given a vector of row indexes in SAS IML</title>
      <link>https://communities.sas.com/t5/SAS-Studio/How-to-select-all-columns-given-a-vector-of-row-indexes-in-SAS/m-p/468517#M5692</link>
      <description>&lt;P&gt;Nice code. For someone who started using SAS a few weeks ago, you have made great progress.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Before I discuss the error, let me show you how the SAS log helps you find it. When you run the program, the log shows something like&amp;nbsp;this:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="courier new,courier"&gt;747 train_ind = setdif(s,test_ind);&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;748 print train_ind;&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="courier new,courier" color="#FF0000"&gt;749 trainset=x[train_ind, ];&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;750 print trainset;&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;751 testset =x[test_ind, ];&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;752 print testset;&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;753 testset_y = y[test_ind];&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;754 trainset_y = y[train_ind];&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;755 run Regress_cv;&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;756 mse_acum=mse_acum + mse;&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;757 end;&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;...&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="courier new,courier"&gt;769 end;&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;ERROR: (execution) Invalid subscript or subscript out of range.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="courier new,courier" color="#FF0000"&gt;operation : [ at line 749 column 17&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt; operands : x, train_ind,&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;x 37 rows 2 cols (numeric)&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;train_ind 1 row 37 cols (numeric)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="courier new,courier"&gt;statement : ASSIGN at line 749 column 7&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;Now&lt;SPAN&gt;&amp;nbsp;look at the red line near the bottom of the log. It says that the invalid subscript occurred in the '[' operation (subscript) on line 749, column 17 of the log. If you look at the line numbers in the log, you discover that Line 749 is&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="courier new,courier" color="#FF0000"&gt;749 trainset=x[train_ind, ];&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;If you also print 'j' (the iteration number) in the loop,&amp;nbsp;you discover that the problem occurs when j=2. The question is therefore&amp;nbsp;why the X variable doesn't have enough rows to support the subscript operation for iteration 2?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The answer is that the Regress_cv module does not have any arguments and &lt;STRONG&gt;therefore all variables in the module are GLOBAL variables&lt;/STRONG&gt;! (&lt;A href="http://go.documentation.sas.com/?docsetId=imlug&amp;amp;docsetTarget=imlug_programstatements_sect013.htm&amp;amp;docsetVersion=14.3&amp;amp;locale=en" target="_self"&gt;See the doc&lt;/A&gt;.) In particular, there is a variable x in the module that overwrites the symbol of the same name in your program.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;One solution is to make the module use a local symbol table by&amp;nbsp;passing in the training and test data set. For example, you might define the module as&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;start Regress_cv&lt;STRONG&gt;(_trainset, _testset); 
  k = ncol(_trainset);
  trainset_y = _trainset[,1];  trainset = _trainset[,2:k];
  testset_y = _testset[,1];  testset = _testset[,2:k];&lt;/STRONG&gt;

  ntrain = nrow(trainset);           /* trainset size         */
  c = j(ntrain, 1, 1);             /* column vector of 1s */
  x = c||trainset;              /* concatenating       */
  y = trainset_y;
  xpxi = inv(x`*x);               /* inverse of X'X      */
  beta = xpxi * (x`*y);           /* parameter estimate  */
  ntest = nrow(testset);                /* testset size         */
  a = j(ntest, 1, 1);              /* column vector of 1s */
  testset = a||testset;
  yhat = testset*beta;            /* prediction on testset*/
  resid = testset_y-yhat;         /* residuals           */
  sse = ssq(resid);               /* SSE                 */
  dfe = nrow(x)-ncol(x);          /* error DF            */
  mse = sse/dfe;                  /* MSE                 */
  &lt;STRONG&gt;return mse;&lt;/STRONG&gt;
finish Regress_cv;   &lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Notice that I've passed in the whole train/test data. You could pass in 4 args if you prefer to subdivide the data in the main program.&amp;nbsp; Using this new module, call it like this:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;do i = 2 to 16;
   mse_acum=0;
   x = pcs_matrix[,2:i];
   y = pcs_matrix[,1];
   n = nrow(x);                     /* sample size         */
   ssquares= ssq(y-sum(y)/n);
   aux= 1:n;                   /* vector from 1:n     */
   call randseed(1);         /* reproducible results*/
   s = sample(aux, n, "WOR"); /* sampling without replacement */
   do j = 1 to (k-1); /* creating train and test sets and regressing */
      test_ind = s[((j-1)#ceil(n/k) + 1):(j#ceil(n/k))];
      train_ind = setdif(s,test_ind);
      trainset=pcs_matrix[train_ind, 1:i];
      testset =pcs_matrix[test_ind, 1:i];
     &lt;STRONG&gt; mse = Regress_cv(trainset, testset);&lt;/STRONG&gt;
      mse_acum=mse_acum + mse;
   end;
   /* for the last fold since n it's not always divisible by k do:*/
   test_ind = s[((k-1)#ceil(n/k) + 1):n];
   train_ind = setdif(s,test_ind);
   trainset=pcs_matrix[train_ind, 1:i];
   testset =pcs_matrix[test_ind, 1:i];
   &lt;STRONG&gt;mse = Regress_cv(trainset, testset);&lt;/STRONG&gt;
   mse_acum=mse_acum + mse;
   print mse_acum;
   *r2_cross[i-1] = 1 - mse_acum#n/ssquares; 
end;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;For more about local and global symbols in SAS/IML, see the article&lt;A href="https://blogs.sas.com/content/iml/2013/04/29/understanding-local-and-global-variables-in-the-sasiml-language.html" target="_self"&gt; "Understanding local and global variables in the SAS/IML language".&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 07 Jun 2018 20:04:02 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Studio/How-to-select-all-columns-given-a-vector-of-row-indexes-in-SAS/m-p/468517#M5692</guid>
      <dc:creator>Rick_SAS</dc:creator>
      <dc:date>2018-06-07T20:04:02Z</dc:date>
    </item>
    <item>
      <title>Re: How to select all columns given a vector of row indexes in SAS IML</title>
      <link>https://communities.sas.com/t5/SAS-Studio/How-to-select-all-columns-given-a-vector-of-row-indexes-in-SAS/m-p/468537#M5693</link>
      <description>Rick, thank you SO MUCH!&lt;BR /&gt;&lt;BR /&gt;That was really helpful!&lt;BR /&gt;Yes, I didn't know that my module's variables were global, and it would probably have taken ages for me to figure this out!&lt;BR /&gt;&lt;BR /&gt;Again, thank you!</description>
      <pubDate>Thu, 07 Jun 2018 21:13:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Studio/How-to-select-all-columns-given-a-vector-of-row-indexes-in-SAS/m-p/468537#M5693</guid>
      <dc:creator>marianaalcos</dc:creator>
      <dc:date>2018-06-07T21:13:33Z</dc:date>
    </item>
    <item>
      <title>Re: How to select all columns given a vector of row indexes in SAS IML</title>
      <link>https://communities.sas.com/t5/SAS-Studio/How-to-select-all-columns-given-a-vector-of-row-indexes-in-SAS/m-p/468635#M5697</link>
      <description>&lt;P&gt;Good luck with your project.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If I may offer a small suggestion, I like to put the starting/ending indices that I loop over into arrays:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;startIdx = ceil( (0:k-1)#ceil(n/k) + 1 );
endIdx = startIdx[,2:ncol(startIdx)]-1 || n;

do j = 1 to k-1;
   test_ind = s[, startIdx[j]:endIdx[j] ];
   ...
end;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;This will prevent you from having extra code at the end "for the last fold". You can do all the work in a single loop, which is a little cleaner.&lt;/P&gt;</description>
      <pubDate>Fri, 08 Jun 2018 09:45:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Studio/How-to-select-all-columns-given-a-vector-of-row-indexes-in-SAS/m-p/468635#M5697</guid>
      <dc:creator>Rick_SAS</dc:creator>
      <dc:date>2018-06-08T09:45:15Z</dc:date>
    </item>
    <item>
      <title>Re: How to select all columns given a vector of row indexes in SAS IML</title>
      <link>https://communities.sas.com/t5/SAS-Studio/How-to-select-all-columns-given-a-vector-of-row-indexes-in-SAS/m-p/468867#M5704</link>
      <description>That's great Rick! Thanks a lot!</description>
      <pubDate>Fri, 08 Jun 2018 20:59:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Studio/How-to-select-all-columns-given-a-vector-of-row-indexes-in-SAS/m-p/468867#M5704</guid>
      <dc:creator>marianaalcos</dc:creator>
      <dc:date>2018-06-08T20:59:06Z</dc:date>
    </item>
  </channel>
</rss>

