<?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: Counting character observations per specific interval in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111044#M258982</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;Thank you very much for your suggestions!&lt;/P&gt;&lt;P&gt;Ya, its not that easy to explain things as i thought.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I sort of figured out how to split the data to get three currency pairs that i want.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I guess now i need to create an interval variable for every 5 min ( trying now by using your suggestions). Next step will be:&lt;/P&gt;&lt;P&gt;for bid and ask &lt;STRONG&gt;price&lt;/STRONG&gt;:&amp;nbsp; find average&amp;nbsp; per 1st sec of the beginning of the interval and per last second (sec. 300) of the end of the 5 min interval and so on with 300 sec step (or the closest since the time doesnt exactly go second by second ). Then to find&lt;STRONG&gt; return&lt;/STRONG&gt;: R=average bidask price( per sec300)/average bidask price (per sec1) and so on, so i will end up with 5 min returns. I do not need to average of bid ask price for 5 min, just the average per every row (per every second), which then used to fine 5 min returns&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for bid ask &lt;STRONG&gt;volume, &lt;/STRONG&gt;the first thing is to count the amount of each letter (letters go from A fo G) in the same 5 min interval (like in excel file that i attached to the original post).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any ideas? Thank you in advance! &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is the code that i used to sort everything into different files: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_46" style="color: #000080; font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_47" style="color: #000080; font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_48" style="color: #000080; font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_50" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;data test2;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;infile&lt;/SPAN&gt;&lt;SPAN style="color: #800080; font-family: 'Courier New'; font-size: 10pt;"&gt;'C:/Thesis Data/ehd_1p5-2002/*.out'&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; dlmstr=&lt;/SPAN&gt;&lt;SPAN style="color: #800080; font-family: 'Courier New'; font-size: 10pt;"&gt;','&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;dsd&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;truncover&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_92" style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_90" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;input &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;date :&lt;/SPAN&gt;&lt;SPAN style="color: #008080; font-family: 'Courier New'; font-size: 10pt;"&gt;mmddyy8.&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; time :&lt;/SPAN&gt;&lt;SPAN style="color: #008080; font-family: 'Courier New'; font-size: 10pt;"&gt;hhmmss8.&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; spot $ type $ bid ask bidvol $ askvol $;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_87" style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;format &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;date &lt;/SPAN&gt;&lt;SPAN style="color: #008080; font-family: 'Courier New'; font-size: 10pt;"&gt;date9.&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; time &lt;/SPAN&gt;&lt;SPAN style="color: #008080; font-family: 'Courier New'; font-size: 10pt;"&gt;time8.0&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_83" style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_81" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;run&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_75" style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_73" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;STRONG style="color: #000080; font-size: 10pt; font-family: 'Courier New';"&gt;%macro&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;split (data=,var=);&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_66" style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_64" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;proc sort data=&amp;amp;data(keep=spot) out=values nodupkey;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_66" style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_61" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;by &amp;amp;var;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_66" style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;run;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_66" style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;data _null_;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_66" style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;set values end=last;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_66" style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;call symputx(&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #800080; font-family: 'Courier New'; font-size: 10pt;"&gt;'val'&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;||left(_n_),translate(&amp;amp;var,&lt;/SPAN&gt;&lt;SPAN style="color: #800080; font-family: 'Courier New'; font-size: 10pt;"&gt;'_'&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;,&lt;/SPAN&gt;&lt;SPAN style="color: #800080; font-family: 'Courier New'; font-size: 10pt;"&gt;'/'&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;));&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;call symputx(&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #800080; font-family: 'Courier New'; font-size: 10pt;"&gt;'va'&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;||left(_n_),&amp;amp;var);&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;if last then call symputx(&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #800080; font-family: 'Courier New'; font-size: 10pt;"&gt;'count'&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;,_n_);&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;run;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;data&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;%do&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; i=&lt;/SPAN&gt;&lt;STRONG style="color: #008080; font-size: 10pt; font-family: 'Courier New';"&gt;1&lt;/STRONG&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;%to&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; &amp;amp;count;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;amp;&amp;amp;val&amp;amp;i&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;%end&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;set &amp;amp;data;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;select(&amp;amp;var);&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;%do&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; i=&lt;/SPAN&gt;&lt;STRONG style="color: #008080; font-size: 10pt; font-family: 'Courier New';"&gt;1&lt;/STRONG&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;%to&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; &amp;amp;count;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;when(&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #800080; font-family: 'Courier New'; font-size: 10pt;"&gt;"&amp;amp;&amp;amp;va&amp;amp;i"&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;) output &amp;amp;&amp;amp;val&amp;amp;i;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;%end&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;otherwise;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;end;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;run;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;STRONG style="color: #000080; font-size: 10pt; font-family: 'Courier New';"&gt;%mend&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;split;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;%&lt;STRONG&gt;&lt;EM&gt;split&lt;/EM&gt;&lt;/STRONG&gt;(data=test2, var=spot)&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 19 Jun 2013 12:44:12 GMT</pubDate>
    <dc:creator>anna29</dc:creator>
    <dc:date>2013-06-19T12:44:12Z</dc:date>
    <item>
      <title>Counting character observations per specific interval</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111039#M258977</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi community,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Im very new to sas so i will really appreciate any help. My problem is that i need to sort out the high-frequency fx data (csv), which includes date, time per second, currency pairs, order type, bid price, ask price, bid volume and ask volume. So far i managed very little, only to sort if by currency pairs. My first issue is that i need to sum up the bid volume (as well as ask vol.) in 5 min interval, but the bid-ask vol are represented by certain letters. So what i need is to count how many A`s, B`etc. i have in each 5 min interval. The second issue is that i need to find the average of bid-ask price at the end of the same 5 min interval (per sec1 , than per sec 300, etc). The rest excel can manage.&lt;/P&gt;&lt;P&gt;Attaching the file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I will be VERY grateful for any tips or help!!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Anna&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 18 Jun 2013 14:26:53 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111039#M258977</guid>
      <dc:creator>anna29</dc:creator>
      <dc:date>2013-06-18T14:26:53Z</dc:date>
    </item>
    <item>
      <title>Re: Counting character observations per specific interval</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111040#M258978</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I think we need some more information before we can help...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What are you summing over? Currency Pairs? Order Type? Everything?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What starts the 5 min intervals? Do these intervals overlap? Are these by currency pairs or order type (or both)?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Clarity on the needs for the average price would help as well.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;EJ&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 18 Jun 2013 15:04:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111040#M258978</guid>
      <dc:creator>esjackso</dc:creator>
      <dc:date>2013-06-18T15:04:59Z</dc:date>
    </item>
    <item>
      <title>Re: Counting character observations per specific interval</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111041#M258979</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;Looking for more information...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;as per heading may be COUNTC, COUNTW function can help.... but we need more info...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 18 Jun 2013 16:47:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111041#M258979</guid>
      <dc:creator>umashankersaini</dc:creator>
      <dc:date>2013-06-18T16:47:41Z</dc:date>
    </item>
    <item>
      <title>Re: Counting character observations per specific interval</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111042#M258980</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi again, &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I think i should tell the whole story of what im actually doing, hope it will shed some light.&lt;/P&gt;&lt;P&gt;I posted an example in excel to the original post of what Im trying to do.&amp;nbsp; The&amp;nbsp; columns im after are date, time,currency pair, 5 min return and net ask-bid volume. But since the amount data is HUGE I need to sort it out is sas so i can use it in eviews for some modelling. &lt;/P&gt;&lt;P&gt;First of all, the data needs to be separated into three files for eur/usd, use/chf and gbp/usd exchange rates. Then i need to calculate average of bid and ask prices per every second (if one of them is missing, then no averaging , for example, if no ask price, then ask=bid price). After that the 5 min ln return needs to be calculated (return=ln(everage bid-ask price per second 300/everage bid-ask price per second 1) starting from the beginning.&lt;/P&gt;&lt;P&gt;For the bid and ask volume the size is enjoyingly expressed by letters from A to G. So the way i am thinking to find what i actually need (net ask-bid volume) is:&lt;/P&gt;&lt;P&gt;count how many As, Bs, etc were there in the 5 min interval (the same interval for which return is calculated) separately for bid and ask volume. Then to assign specific value to each letter, multiply the amount of letter by the assigned value, sum them:&lt;/P&gt;&lt;P&gt;for example: if there were 2 As and 3Bs for bid volume in 5 min interval (and assigned values are A=1, B=6), then 2*1+3*6=20 (5 min bid volume).&lt;/P&gt;&lt;P&gt;the same goes for ask volume. the last step is 5 min ask volume minus 5 min bid volume&amp;nbsp; = net order flow.&lt;/P&gt;&lt;P&gt;I hope it sounds more clear now.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Looking forward for any suggestions! &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Anna&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 18 Jun 2013 18:56:23 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111042#M258980</guid>
      <dc:creator>anna29</dc:creator>
      <dc:date>2013-06-18T18:56:23Z</dc:date>
    </item>
    <item>
      <title>Re: Counting character observations per specific interval</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111043#M258981</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'm not sure I can answer all your questions but I think I can assist you part of the way. You do not need to sort your data in order to split it out.&lt;/P&gt;&lt;P&gt;Can I assume you have used Proc Import to get the data into SAS?&amp;nbsp; Because you have no header row you probably have your table with columns called COL1, COL2, COL3 etc or something similar.&amp;nbsp; To check, use (assuming your table is called imported)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Proc Contents data = imported ;&lt;/P&gt;&lt;P&gt;run ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note from the output whether the date and time values have been correctly imported as numbers.&amp;nbsp; In the case of dates, most probably not.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Do the split first.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data &lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;eur_usd, usd_chf gbp_usd ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set imported ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Rename&amp;nbsp; COL1 = datechar&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; COL2 = time&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* or timechar if it is not numeric */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; COL3 = currency_pair&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* etc */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Select COL3 ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; When 'EUR/USD' then output eur_usd ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; When 'USD/CHF' then output &lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;usd_chf&lt;/SPAN&gt; ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; When 'GBP/USD' then output &lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;gbp_usd&lt;/SPAN&gt; ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Otherwise return ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;Run ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;Now you should have 3 tables with just the values you want.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;If all is well you can save much space &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;Proc Delete data = imported ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;run ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;(Can always be imported from the text file)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;Perform the same calculations on each new table, I'll use &lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;gbp_usd&lt;/SPAN&gt; as an example.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;Data &lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;gbp_usd&lt;/SPAN&gt;_1 ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set &lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;gbp_usd&lt;/SPAN&gt; ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Date = input (datechar, MMDDYY.) ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Format date MMDDYY10. ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* If needed&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Time = &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;input (timechar, time.) ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Format &lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;time&lt;/SPAN&gt; &lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;time&lt;/SPAN&gt;. ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; timesec = int(time) ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; time5min = int(timesec/300) ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Format&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; timesec &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; time5min&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; time. ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* more stuff - your averageing goes here */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Drop&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; datechar /* timechar */ ;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;run ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;Your description of the averaging has been somewhat 'lost in translation'.&amp;nbsp; I am guessing you need a row average of bid and ask, and then this values averaged over the 5 minute period.&amp;nbsp; To do this I would replace&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt; /* more stuff - your averageing goes here */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;with&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; row_average = mean (COL5, COL6) ;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* use the renamed values instead */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;Then to get the 5 min average&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;Proc SQL ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Create table &lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;gbp_usd&lt;/SPAN&gt;_5min_average as&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Select&amp;nbsp; date&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; time5min&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;currency_pair&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MEAN (row_average)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; As _5min_average&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; From&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;gbp_usd&lt;/SPAN&gt;_1&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Group&amp;nbsp; By&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1, 2, 3&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;Quit ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;Try this out and let us know whether it meets your requirement, and if not try and explain your requirements even more clearly.&amp;nbsp; If you encounter errors please copy the LOG record so we can assist.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;Richard&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Jun 2013 11:49:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111043#M258981</guid>
      <dc:creator>RichardinOz</dc:creator>
      <dc:date>2013-06-19T11:49:07Z</dc:date>
    </item>
    <item>
      <title>Re: Counting character observations per specific interval</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111044#M258982</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;Thank you very much for your suggestions!&lt;/P&gt;&lt;P&gt;Ya, its not that easy to explain things as i thought.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I sort of figured out how to split the data to get three currency pairs that i want.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I guess now i need to create an interval variable for every 5 min ( trying now by using your suggestions). Next step will be:&lt;/P&gt;&lt;P&gt;for bid and ask &lt;STRONG&gt;price&lt;/STRONG&gt;:&amp;nbsp; find average&amp;nbsp; per 1st sec of the beginning of the interval and per last second (sec. 300) of the end of the 5 min interval and so on with 300 sec step (or the closest since the time doesnt exactly go second by second ). Then to find&lt;STRONG&gt; return&lt;/STRONG&gt;: R=average bidask price( per sec300)/average bidask price (per sec1) and so on, so i will end up with 5 min returns. I do not need to average of bid ask price for 5 min, just the average per every row (per every second), which then used to fine 5 min returns&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for bid ask &lt;STRONG&gt;volume, &lt;/STRONG&gt;the first thing is to count the amount of each letter (letters go from A fo G) in the same 5 min interval (like in excel file that i attached to the original post).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any ideas? Thank you in advance! &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is the code that i used to sort everything into different files: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_46" style="color: #000080; font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_47" style="color: #000080; font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_48" style="color: #000080; font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_50" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;data test2;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;infile&lt;/SPAN&gt;&lt;SPAN style="color: #800080; font-family: 'Courier New'; font-size: 10pt;"&gt;'C:/Thesis Data/ehd_1p5-2002/*.out'&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; dlmstr=&lt;/SPAN&gt;&lt;SPAN style="color: #800080; font-family: 'Courier New'; font-size: 10pt;"&gt;','&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;dsd&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;truncover&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_92" style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_90" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;input &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;date :&lt;/SPAN&gt;&lt;SPAN style="color: #008080; font-family: 'Courier New'; font-size: 10pt;"&gt;mmddyy8.&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; time :&lt;/SPAN&gt;&lt;SPAN style="color: #008080; font-family: 'Courier New'; font-size: 10pt;"&gt;hhmmss8.&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; spot $ type $ bid ask bidvol $ askvol $;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_87" style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;format &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;date &lt;/SPAN&gt;&lt;SPAN style="color: #008080; font-family: 'Courier New'; font-size: 10pt;"&gt;date9.&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; time &lt;/SPAN&gt;&lt;SPAN style="color: #008080; font-family: 'Courier New'; font-size: 10pt;"&gt;time8.0&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_83" style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_81" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;run&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_75" style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_73" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;STRONG style="color: #000080; font-size: 10pt; font-family: 'Courier New';"&gt;%macro&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;split (data=,var=);&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_66" style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_64" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;proc sort data=&amp;amp;data(keep=spot) out=values nodupkey;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_66" style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_61" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;by &amp;amp;var;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_66" style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;run;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_66" style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;data _null_;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_66" style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;set values end=last;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;SPAN id="yui_3_7_2_27_1371644104927_66" style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;call symputx(&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #800080; font-family: 'Courier New'; font-size: 10pt;"&gt;'val'&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;||left(_n_),translate(&amp;amp;var,&lt;/SPAN&gt;&lt;SPAN style="color: #800080; font-family: 'Courier New'; font-size: 10pt;"&gt;'_'&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;,&lt;/SPAN&gt;&lt;SPAN style="color: #800080; font-family: 'Courier New'; font-size: 10pt;"&gt;'/'&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;));&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;call symputx(&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #800080; font-family: 'Courier New'; font-size: 10pt;"&gt;'va'&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;||left(_n_),&amp;amp;var);&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;if last then call symputx(&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #800080; font-family: 'Courier New'; font-size: 10pt;"&gt;'count'&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;,_n_);&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;run;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;data&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;%do&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; i=&lt;/SPAN&gt;&lt;STRONG style="color: #008080; font-size: 10pt; font-family: 'Courier New';"&gt;1&lt;/STRONG&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;%to&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; &amp;amp;count;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;amp;&amp;amp;val&amp;amp;i&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;%end&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;set &amp;amp;data;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;select(&amp;amp;var);&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;%do&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; i=&lt;/SPAN&gt;&lt;STRONG style="color: #008080; font-size: 10pt; font-family: 'Courier New';"&gt;1&lt;/STRONG&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;%to&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt; &amp;amp;count;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;when(&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #800080; font-family: 'Courier New'; font-size: 10pt;"&gt;"&amp;amp;&amp;amp;va&amp;amp;i"&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;) output &amp;amp;&amp;amp;val&amp;amp;i;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="color: #0000ff; font-family: 'Courier New'; font-size: 10pt;"&gt;%end&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;otherwise;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;end;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;run;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;STRONG style="color: #000080; font-size: 10pt; font-family: 'Courier New';"&gt;%mend&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;split;&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P id="yui_3_7_2_27_1371644104927_35" style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;%&lt;STRONG&gt;&lt;EM&gt;split&lt;/EM&gt;&lt;/STRONG&gt;(data=test2, var=spot)&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #000000; font-family: 'times new roman', 'new york', times, serif; font-size: 16px; text-align: -webkit-auto;"&gt;&lt;SPAN style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Jun 2013 12:44:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111044#M258982</guid>
      <dc:creator>anna29</dc:creator>
      <dc:date>2013-06-19T12:44:12Z</dc:date>
    </item>
    <item>
      <title>Re: Counting character observations per specific interval</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111045#M258983</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Maybe Im missing somthing, but I am still not sure what starts the interval and whether the different types of transactions matter. I think you need to describe the output you are looking for based on the example data you gave. For example if I look at the usd_jpy breakout in the sample data the first observation is 1:08 am but the next is 3:48 the next day. How do this work with your intervals? Without this information we cant help you identify the right observartions for your formulas.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;EJ&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Jun 2013 13:29:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111045#M258983</guid>
      <dc:creator>esjackso</dc:creator>
      <dc:date>2013-06-19T13:29:22Z</dc:date>
    </item>
    <item>
      <title>Re: Counting character observations per specific interval</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111046#M258984</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You undersold yourself on SAS skills!&amp;nbsp; Had you supplied your code in the first post we could have given you more specific advice.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would recommend you &lt;STRONG&gt;do not sort&lt;/STRONG&gt; your data, because it is already in date time order and a very large dataset consumes mega resources in sorting.&amp;nbsp; Also, unless you are careful, the sort may disturb the existing order.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;To get distinct values of spot, and subsequently split your data&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Proc SQL Noprint ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Crate table spot_list as&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Select distinct spot&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; from test2&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Select distinct spot into :spotlist separated by ' '&amp;nbsp; /* space */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; from spot_list ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Select count * into :spotcount&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; from spot_list ;&lt;/P&gt;&lt;P&gt;Quit ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%Let spottables&amp;nbsp; = %sysfunc (translate(&amp;amp;spotlist, _, / )) ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%macro Whenspots ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %do i = 1 to &amp;amp;spotcount ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; When "%Scan(&amp;amp;Spotlist, &amp;amp;i)" then output %Scan(&amp;amp;spottables, &amp;amp;i) ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %end ;&lt;/P&gt;&lt;P&gt;%mend ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data &amp;amp;spottables ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set test2 ;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&lt;SPAN style="font-style: inherit;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; time5min = int(timesec/300) ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&lt;SPAN style="font-style: inherit;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* calculate row average - not sure i understand your requirements fully here */&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&lt;SPAN style="font-style: inherit;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&lt;SPAN style="font-style: inherit;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Format&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-style: inherit; font-size: 10pt;"&gt;time5min&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; time. ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-style: inherit; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Select spot ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-style: inherit; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %Whenspots ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-style: inherit; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Otherwise ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-style: inherit; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-style: inherit; font-size: 10pt;"&gt;Run ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-style: inherit; font-size: 10pt;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;From there you can modify my SQL code to get averages across 5 min intervals. Another SQL step (or Proc Summary with a class statement) can count your As, Bs, etc, and sum volumes, using "group by time5min, type" then followed by Proc transpose to put all the counts/sums into the same row.&amp;nbsp; A datastep using first.time5min and last.time5min (times need not be on the exact boundary) can be used for calculations specific to those rows (if required.) &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is an outline fo at least soe of what you want&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%Macro AnalyseSpottbl (Spottbl) ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Proc SQL ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Create table &amp;amp;Spottbl._summary as&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Select&amp;nbsp; date&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; spot&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; time5min&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; type&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'count_' || type as countname&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'bidvol_' || type as bidname&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'askvol_' || type as askname&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; count (*) as count5min&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sum (bidvol) as bidvol5min&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sum (askvol) as askvol5min&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; from test2&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; group by 1, 2, 3, 4, 5, 6, 7&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;Quit ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Proc transpose data = &amp;amp;Spottbl._summary (rename = (bidname = _name_))&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; out = &amp;amp;Spottbl._bidvol (drop = _name_)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; By date spot time5min ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var bidvol5min ;&lt;/P&gt;&lt;P&gt;Run ;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;Proc transpose data = &amp;amp;Spottbl._summary (rename = (askname = _name_))&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; out = &amp;amp;Spottbl._askvol (drop = _name_)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; By date spot time5min ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var askvol5min ;&lt;/P&gt;&lt;P&gt;Run ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Proc transpose data = &amp;amp;Spottbl._summary (rename = (countname = _name_))&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; out = &amp;amp;Spottbl._counts (drop = _name_)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; By date spot time5min ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var count5min ;&lt;/P&gt;&lt;P&gt;Run ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;Data &amp;amp;Spottbl._allstats ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Merge &amp;amp;Spottbl._counts&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;Spottbl._bidvol&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;Spottbl._askvol&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; By date spot time5min ;&lt;/P&gt;&lt;P&gt;Run ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%Mend ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%Macro DoAnalysis (num) ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %Do I = 1 to &amp;amp;num ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %Let Spottbl = %Scan(&amp;amp;spottables, &amp;amp;i) ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %AnalyseSpottbl (&amp;amp;Spottbl) ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %End ;&lt;/P&gt;&lt;P&gt;%Mend ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%DoAnalysis (&amp;amp;spotcount) ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Good luck&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Richard&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 20 Jun 2013 13:05:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111046#M258984</guid>
      <dc:creator>RichardinOz</dc:creator>
      <dc:date>2013-06-20T13:05:38Z</dc:date>
    </item>
    <item>
      <title>Re: Counting character observations per specific interval</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111047#M258985</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I have to say when i posted my question the first time i was still struggling with simple thing like opening cdv files in sas, but since then its going better, very slow though...&lt;/P&gt;&lt;P&gt;The sorting itself went fine, looks like i got all the stuff right. I just attached an example of 1 day data im working with. Now i created new variable: datetime variable, average price, netOF (net order flow (askvol-bidvol) - i replaced letters with actual values so its easier to work with them) and 5min interval, which is 1 for first 5 min (dont know how to do it for the whole period without using if statement for every datetime and not sure if i actually need it or not).&amp;nbsp; The thing is I'm not sure how to specify is sas:&lt;/P&gt;&lt;P&gt;1. how to calculate ln return by taking the last average price in 5min interval (in example file it is the average price in the same row as 02jan2002 00:07:02 ) and divide it by the first one (first row average price for 02jan2002 00:02:52 ) and so on til the end.Then report the value of return in the row which is the end of every 5min interval.&lt;/P&gt;&lt;P&gt;2. how to sum all net OF for every 5 min interval (for the first 5 min&amp;nbsp; - from 00:02:52 til 00:07:02) and report in the same row as return.&lt;/P&gt;&lt;P&gt;3. And how get the output with&amp;nbsp; variables which are calculated for every 5min (Im "shrinking" the data so eviews can read it)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any ideas?&lt;/P&gt;&lt;P&gt;Thanks in advance&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Anna&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 20 Jun 2013 13:45:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111047#M258985</guid>
      <dc:creator>anna29</dc:creator>
      <dc:date>2013-06-20T13:45:54Z</dc:date>
    </item>
    <item>
      <title>Re: Counting character observations per specific interval</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111048#M258986</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The example was great but it starts mid dataset. How should them be treated? Why did it start at 18:31 when there was obs with 18:30 right before it? Also the end of the period is actually longer than 5 minutes so is the end the observation after 5 min is passed? what happens if the next observation is 10 minutes latter?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;With out the rules to define the intervals we cant provide specific code. Basically you would have to id each observation that starts the interval (sec1) and retain the value until you get to your end of the interval then perform you calculation.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is the code I was playing with to figure it out:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data eur_usd2;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set eur_usd;&lt;/P&gt;&lt;P&gt;&amp;nbsp; datetime = dhms(date,hour(time),minute(time),second(time));&lt;/P&gt;&lt;P&gt;&amp;nbsp; secsince = datetime - lag1(datetime);&lt;/P&gt;&lt;P&gt;&amp;nbsp; if secsince &amp;gt; 360 then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp; start = 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp; addsec = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp; else start = 0;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if start = 0 then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp; addsec = addsec + secsince;&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp; retain addsec;&lt;/P&gt;&lt;P&gt;&amp;nbsp; format datetime datetime16.;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 20 Jun 2013 14:43:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111048#M258986</guid>
      <dc:creator>esjackso</dc:creator>
      <dc:date>2013-06-20T14:43:54Z</dc:date>
    </item>
    <item>
      <title>Re: Counting character observations per specific interval</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111049#M258987</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I meant the last attachment, the txt file : test_eurusd. Sorry for inconvenience&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Anna&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 20 Jun 2013 14:53:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111049#M258987</guid>
      <dc:creator>anna29</dc:creator>
      <dc:date>2013-06-20T14:53:06Z</dc:date>
    </item>
    <item>
      <title>Re: Counting character observations per specific interval</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111050#M258988</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Are you hand assigning the 5min_int var? if so I would just id the start and end of each interval. (The formulas are not the problem ...I think the problem has been getting sas to id the intervals for you).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Using that as an example (0 to start the interval 1 for those obs in the interval, and 2 to end it or something like that): &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data data3;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set data2;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if min_5_int = 0 then sec1avg = average(bid,ask);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if min_5_int = 2 then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sec300avg = average(bid,ask);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5minret = ln(sec300avg/sec1avg);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; retain sec1avg;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*once you verify this works you can add: if min_5_int = 2 then output; */&lt;/P&gt;&lt;P&gt;&amp;nbsp; run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I didnt have time to test it but hopefully it at least gets you going in the right direction.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;EJ&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 20 Jun 2013 15:15:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111050#M258988</guid>
      <dc:creator>esjackso</dc:creator>
      <dc:date>2013-06-20T15:15:07Z</dc:date>
    </item>
    <item>
      <title>Re: Counting character observations per specific interval</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111051#M258989</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks! I think it looks like what i need, will try it. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Anna&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 20 Jun 2013 15:19:32 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111051#M258989</guid>
      <dc:creator>anna29</dc:creator>
      <dc:date>2013-06-20T15:19:32Z</dc:date>
    </item>
    <item>
      <title>Re: Counting character observations per specific interval</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111052#M258990</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Im not sure how to id the intervals correctly to avoid hand assigning... Any tips?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Anna&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 20 Jun 2013 15:29:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111052#M258990</guid>
      <dc:creator>anna29</dc:creator>
      <dc:date>2013-06-20T15:29:04Z</dc:date>
    </item>
    <item>
      <title>Re: Counting character observations per specific interval</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111053#M258991</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The code in the early post was my first pass at identifying the interval. But just saying 5 min interval does not mean a lot once you look at complex data. What if there is only a 3 min interval before a large jump in time? Does that matter? The likely hood that every series is not exactly 5 minutes complicates things.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I think the answer lies in the following code (I just dont have the time to get further with it). Hopefully someone else in the community may have some ideas / solutions.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data eur_usd2;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set eur_usd;&lt;/P&gt;&lt;P&gt;&amp;nbsp; start = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp; datetime = dhms(date,hour(time),minute(time),second(time));&lt;/P&gt;&lt;P&gt;&amp;nbsp; avg = mean(bid,ask);&lt;/P&gt;&lt;P&gt;&amp;nbsp; if _N_ = 1 then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp; start = 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp; secsince = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp; lagavg = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp; addsec = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp; else do;&lt;/P&gt;&lt;P&gt;&amp;nbsp; secsince = datetime - lag1(datetime);&lt;/P&gt;&lt;P&gt;&amp;nbsp; lagavg = lag1(avg);&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if secsince &amp;gt; 300 or addsec&amp;gt;300 then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp; start = 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp; addsec = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp; sec1avg = avg;&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if start = 0 then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp; addsec = addsec + secsince;&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp; retain addsec sec1avg;&lt;/P&gt;&lt;P&gt;&amp;nbsp; format datetime datetime16.;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;EJ&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 20 Jun 2013 17:22:11 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Counting-character-observations-per-specific-interval/m-p/111053#M258991</guid>
      <dc:creator>esjackso</dc:creator>
      <dc:date>2013-06-20T17:22:11Z</dc:date>
    </item>
  </channel>
</rss>

