<?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: Writing a loop to read data name in a macro in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78863#M17037</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;what is the connection you use between yahoo finance and sas?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 11 Apr 2012 07:15:23 GMT</pubDate>
    <dc:creator>manojinpec</dc:creator>
    <dc:date>2012-04-11T07:15:23Z</dc:date>
    <item>
      <title>Writing a loop to read data name in a macro</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78859#M17033</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I wrote a macro that can&amp;nbsp; recursively input the similar datasets into one data file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It will be no problem for me to change the data name one by one if there are only several datasets.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However now, there are more than 100 datasets. How can I write a macro loop to read data names automatically?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For example:&lt;/P&gt;&lt;P&gt;%getdata(dataname) is the macro I wrote.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What I want to do is to&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;pesudecode:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%do name = A, B, C, D, E, F, G, ......&lt;/P&gt;&lt;P&gt;%getdata(name&lt;I&gt;)&lt;/I&gt;&lt;/P&gt;&lt;P&gt;%end;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for the help in advance.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Apr 2012 05:50:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78859#M17033</guid>
      <dc:creator>Fred_Gavin</dc:creator>
      <dc:date>2012-04-11T05:50:34Z</dc:date>
    </item>
    <item>
      <title>Re: Writing a loop to read data name in a macro</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78860#M17034</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Try below.i haven't tested the program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%let name=A,B,C,D,E.. ;&lt;/P&gt;&lt;P&gt;%let dataset=%scan(&amp;amp;name,1,',');&lt;/P&gt;&lt;P&gt;%do %while(&amp;amp;dataset ne '');&lt;/P&gt;&lt;P&gt;%let dataset=%scan(&amp;amp;name,&amp;amp;i,',');&lt;/P&gt;&lt;P&gt;%let i=%eval(&amp;amp;i+1);&lt;/P&gt;&lt;P&gt;%end;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Apr 2012 06:50:26 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78860#M17034</guid>
      <dc:creator>manojinpec</dc:creator>
      <dc:date>2012-04-11T06:50:26Z</dc:date>
    </item>
    <item>
      <title>Re: Writing a loop to read data name in a macro</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78861#M17035</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Easy. Assuming all of your datasets are under C:\&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;
libname x v9 'c:\';
data _null_;
 set sashelp.vmember(keep=libname memname where=(libname='X'));
 call execute('%getdata('||memname||')');
run;


&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ksharp&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Apr 2012 06:54:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78861#M17035</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2012-04-11T06:54:15Z</dc:date>
    </item>
    <item>
      <title>Re: Writing a loop to read data name in a macro</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78862#M17036</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Sorry, forgot to mention that. The datasets do not exists. They are the stock prices to be downloaded from Yahoo Finance. And A, B, C, D, E... are just stock codes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%getdata(dataname), is to perform the download first, and recursively combine the data downloaded together in one file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;That's why I need to find a way to read the 100 stock codes automatically, rather than change them manually. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Apr 2012 07:01:32 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78862#M17036</guid>
      <dc:creator>Fred_Gavin</dc:creator>
      <dc:date>2012-04-11T07:01:32Z</dc:date>
    </item>
    <item>
      <title>Re: Writing a loop to read data name in a macro</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78863#M17037</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;what is the connection you use between yahoo finance and sas?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Apr 2012 07:15:23 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78863#M17037</guid>
      <dc:creator>manojinpec</dc:creator>
      <dc:date>2012-04-11T07:15:23Z</dc:date>
    </item>
    <item>
      <title>Re: Writing a loop to read data name in a macro</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78864#M17038</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN&gt;FILENAME myurl URL "&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://ichart.finance.yahoo.com/table.csv?s=&amp;amp;tic..AX"&gt;http://ichart.finance.yahoo.com/table.csv?s=&amp;amp;tic..AX&lt;/A&gt;&lt;SPAN&gt;";&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;it's for australian stocks, so i put AX there. otherwise, you can leave it as ...=&amp;amp;tic"&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Apr 2012 07:18:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78864#M17038</guid>
      <dc:creator>Fred_Gavin</dc:creator>
      <dc:date>2012-04-11T07:18:20Z</dc:date>
    </item>
    <item>
      <title>Re: Writing a loop to read data name in a macro</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78865#M17039</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;If you already have a list of stock code. It is also easy.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;data x;
input stock $;
cards;
A
B
C
D
;
run;

data _null_;
 set x;
 call execute('%getdata('||stock||')');
run;

&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ksharp&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Apr 2012 08:17:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78865#M17039</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2012-04-11T08:17:24Z</dc:date>
    </item>
    <item>
      <title>Re: Writing a loop to read data name in a macro</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78866#M17040</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This is new thing for me. Which sas utility is requried to fecth data from website.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Apr 2012 09:38:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78866#M17040</guid>
      <dc:creator>manojinpec</dc:creator>
      <dc:date>2012-04-11T09:38:48Z</dc:date>
    </item>
    <item>
      <title>Re: Writing a loop to read data name in a macro</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78867#M17041</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;It worked for the stock separately, which means the final data file only contains one stock only. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But I want the final data file containing all stocks fetched from Yahoo. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If I run %getdata(MCE) first, then it will generate a file called 'ALL', which contains MCE stock prices. &lt;/P&gt;&lt;P&gt;then run%getdata(BSL), then BSL data will be appended below MCE in 'ALL' recursively, and so on. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I dont know which part is not quite right. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Apr 2012 10:40:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78867#M17041</guid>
      <dc:creator>Fred_Gavin</dc:creator>
      <dc:date>2012-04-11T10:40:22Z</dc:date>
    </item>
    <item>
      <title>Re: Writing a loop to read data name in a macro</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78868#M17042</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I think this code is useful, and I may redesign my own program and embed this to make it work. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you very much. &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Apr 2012 11:47:45 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78868#M17042</guid>
      <dc:creator>Fred_Gavin</dc:creator>
      <dc:date>2012-04-11T11:47:45Z</dc:date>
    </item>
    <item>
      <title>Re: Writing a loop to read data name in a macro</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78869#M17043</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Nth is new,&amp;nbsp; still the data step with one additional line with URL. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can search Google that "download stock from Yahoo Finance in SAS", then you can find how it was done. &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Apr 2012 11:50:53 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78869#M17043</guid>
      <dc:creator>Fred_Gavin</dc:creator>
      <dc:date>2012-04-11T11:50:53Z</dc:date>
    </item>
    <item>
      <title>Re: Writing a loop to read data name in a macro</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78870#M17044</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You can add another proc append after every macro be done.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data x;&lt;/P&gt;&lt;P&gt;input stock $;&lt;/P&gt;&lt;P&gt;cards;&lt;/P&gt;&lt;P&gt;A&lt;/P&gt;&lt;P&gt;B&lt;/P&gt;&lt;P&gt;C&lt;/P&gt;&lt;P&gt;D&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data _null_;&lt;/P&gt;&lt;P&gt; set x;&lt;/P&gt;&lt;P&gt; call execute('%getdata('||stock||')');&lt;/P&gt;&lt;P&gt; call execute('proc append base=want data=all force;run;');&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ksharp&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 12 Apr 2012 06:12:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Writing-a-loop-to-read-data-name-in-a-macro/m-p/78870#M17044</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2012-04-12T06:12:33Z</dc:date>
    </item>
  </channel>
</rss>

