<?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: Class (confidence) intervals in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Class-confidence-intervals/m-p/347451#M273319</link>
    <description>proc freq;&lt;BR /&gt; 110            table x;&lt;BR /&gt; 111            format xf.;&lt;BR /&gt;                       ___&lt;BR /&gt;                       22&lt;BR /&gt;                       76&lt;BR /&gt; ERROR 22-322: Syntax error, expecting one of the following: a name, _ALL_, _CHARACTER_, _CHAR_, _NUMERIC_.  &lt;BR /&gt; ERROR 76-322: Syntax error, statement will be ignored.</description>
    <pubDate>Wed, 05 Apr 2017 16:05:08 GMT</pubDate>
    <dc:creator>jonatan_velarde</dc:creator>
    <dc:date>2017-04-05T16:05:08Z</dc:date>
    <item>
      <title>Class (confidence) intervals</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Class-confidence-intervals/m-p/347383#M273316</link>
      <description>&lt;P&gt;Good morning my SAS friends:&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;Here is a question about SAS basic computing&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;As we know, confidence interval (CLASS) is a usual statistical procedure where we group many observations in CLASSES considering the upper and lower limits and the number of observations (n) as grouping criteria (see this example &lt;A href="http://www.vitutor.com/statistics/descriptive/frequency_distribution.html" target="_blank"&gt;http://www.vitutor.com/statistics/descriptive/frequency_distribution.html&lt;/A&gt;)&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;Considering these data:&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;3, 15, 24, 28, 33, 35, 38, 42, 43, 38, 36, 34, 29, 25, 17, 7, 34, 36, 39, 44, 31, 26, 20, 11, 13, 22, 27, 47, 39, 37, 34, 32, 35, 28, 38, 41, 48, 15, 32, 13.&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;In this case, 48 − 3 = 45. For the purpose of this table, increase the number to 50. Therefore, 50 : 5 = 10 intervals.&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;xi&amp;nbsp;&amp;nbsp; &amp;nbsp;fi&amp;nbsp;&amp;nbsp; &amp;nbsp;Fi&amp;nbsp;&amp;nbsp; &amp;nbsp;ni&amp;nbsp;&amp;nbsp; &amp;nbsp;Ni&lt;BR /&gt;[0, 5)&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;2.5&amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;0.025&amp;nbsp;&amp;nbsp; &amp;nbsp;0.025&lt;BR /&gt;[5, 10)&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;7.5&amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;2&amp;nbsp;&amp;nbsp; &amp;nbsp;0.025&amp;nbsp;&amp;nbsp; &amp;nbsp;0.050&lt;BR /&gt;[10, 15)&amp;nbsp;&amp;nbsp; &amp;nbsp;12.5&amp;nbsp;&amp;nbsp; &amp;nbsp;3&amp;nbsp;&amp;nbsp; &amp;nbsp;5&amp;nbsp;&amp;nbsp; &amp;nbsp;0.075&amp;nbsp;&amp;nbsp; &amp;nbsp;0.125&lt;BR /&gt;[15, 20)&amp;nbsp;&amp;nbsp; &amp;nbsp;17.5&amp;nbsp;&amp;nbsp; &amp;nbsp;3&amp;nbsp;&amp;nbsp; &amp;nbsp;8&amp;nbsp;&amp;nbsp; &amp;nbsp;0.075&amp;nbsp;&amp;nbsp; &amp;nbsp;0.200&lt;BR /&gt;[20, 25)&amp;nbsp;&amp;nbsp; &amp;nbsp;22.5&amp;nbsp;&amp;nbsp; &amp;nbsp;3&amp;nbsp;&amp;nbsp; &amp;nbsp;11&amp;nbsp;&amp;nbsp; &amp;nbsp;0.075&amp;nbsp;&amp;nbsp; &amp;nbsp;0.275&lt;BR /&gt;[25, 30)&amp;nbsp;&amp;nbsp; &amp;nbsp;27.5&amp;nbsp;&amp;nbsp; &amp;nbsp;6&amp;nbsp;&amp;nbsp; &amp;nbsp;17&amp;nbsp;&amp;nbsp; &amp;nbsp;0.150&amp;nbsp;&amp;nbsp; &amp;nbsp;0.425&lt;BR /&gt;[30, 35)&amp;nbsp;&amp;nbsp; &amp;nbsp;32.5&amp;nbsp;&amp;nbsp; &amp;nbsp;7&amp;nbsp;&amp;nbsp; &amp;nbsp;24&amp;nbsp;&amp;nbsp; &amp;nbsp;0.175&amp;nbsp;&amp;nbsp; &amp;nbsp;0.600&lt;BR /&gt;[35, 40)&amp;nbsp;&amp;nbsp; &amp;nbsp;37.5&amp;nbsp;&amp;nbsp; &amp;nbsp;10&amp;nbsp;&amp;nbsp; &amp;nbsp;34&amp;nbsp;&amp;nbsp; &amp;nbsp;0.250&amp;nbsp;&amp;nbsp; &amp;nbsp;0.850&lt;BR /&gt;[40, 45)&amp;nbsp;&amp;nbsp; &amp;nbsp;42.5&amp;nbsp;&amp;nbsp; &amp;nbsp;4&amp;nbsp;&amp;nbsp; &amp;nbsp;38&amp;nbsp;&amp;nbsp; &amp;nbsp;0.100&amp;nbsp;&amp;nbsp; &amp;nbsp;0.950&lt;BR /&gt;[45, 50)&amp;nbsp;&amp;nbsp; &amp;nbsp;47.5&amp;nbsp;&amp;nbsp; &amp;nbsp;2&amp;nbsp;&amp;nbsp; &amp;nbsp;40&amp;nbsp;&amp;nbsp; &amp;nbsp;0.050&amp;nbsp;&amp;nbsp; &amp;nbsp;1&lt;BR /&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;40&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;Is there any SAS Statement that could help???&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;thanks in advance&lt;/P&gt;</description>
      <pubDate>Wed, 05 Apr 2017 14:35:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Class-confidence-intervals/m-p/347383#M273316</guid>
      <dc:creator>jonatan_velarde</dc:creator>
      <dc:date>2017-04-05T14:35:09Z</dc:date>
    </item>
    <item>
      <title>Re: Class (confidence) intervals</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Class-confidence-intervals/m-p/347394#M273317</link>
      <description>&lt;P&gt;These are NOT confidence intervals.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;You want to apply a format that groups your data into the intervals shown, and then run PROC FREQ on this data.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Something like this (where you do the rest of the typing on line 2)&lt;/P&gt;
&lt;PRE&gt;proc format;
    value xf 0-4.99='0-5' 5-9.99='5-10' ... ;
run;

proc freq;
    table x;
    format xf.;
run;
&lt;/PRE&gt;</description>
      <pubDate>Wed, 05 Apr 2017 14:44:46 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Class-confidence-intervals/m-p/347394#M273317</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2017-04-05T14:44:46Z</dc:date>
    </item>
    <item>
      <title>Re: Class (confidence) intervals</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Class-confidence-intervals/m-p/347438#M273318</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;WPS/SAS/R Class (confidence) intervals

IML has an interface to R
IML might have this function, I am not sure.

I think you want left close ']' otherwise tou could miss and observation

https://communities.sas.com/t5/General-SAS-Programming/Class-confidence-intervals/m-p/347383
HAVE
====

Up to 40 obs SD1.HAVE total obs=50

Obs    NUMS

  1      3
  2     15
  3     24
  4     28
  5     33
  6     35
  7     38
  8     42
  9     43
...
 46     42
 47     43
 48     14
 49     30
 50     10

WANT
====

Up to 40 obs from c2wps total obs=10

Obs      C1       FREQ

  1    (0,5]        1
  2    (5,10]       2
  3    (10,15]      7
  4    (15,20]      2
  5    (20,25]      4
  6    (25,30]      6
  7    (30,35]     11
  8    (35,40]      8
  9    (40,45]      6
 10    (45,50]      3


The MEANS Procedure

                          Analysis Variable : NUMS

             N                                       Lower 95%       Upper 95%
C1         Obs            Mean         Std Dev     CL for Mean     CL for Mean
------------------------------------------------------------------------------
(0,5]        1       3.0000000               .               .               .
(5,10]       2       8.5000000       2.1213203     -10.5593071      27.5593071
(10,15]      7      13.5714286       1.3972763      12.2791636      14.8636936
(15,20]      2      18.5000000       2.1213203      -0.5593071      37.5593071
(20,25]      4      23.2500000       1.5000000      20.8631653      25.6368347
(25,30]      6      28.0000000       1.4142136      26.5158739      29.4841261
(30,35]     11      33.2727273       1.5550504      32.2280302      34.3174244
(35,40]      8      37.6250000       1.1877349      36.6320287      38.6179713
(40,45]      6      42.5000000       1.0488088      41.3993426      43.6006574
(45,50]      3      47.6666667       0.5773503      46.2324491      49.1008842
------------------------------------------------------------------------------


WORKING CODE

  R
     c1 &amp;lt;- cut(have$NUMS, breaks = seq(0, 50, by = 5));
     proc means

*                _                  _       _
 _ __ ___   __ _| | _____        __| | __ _| |_ __ _
| '_ ` _ \ / _` | |/ / _ \_____ / _` |/ _` | __/ _` |
| | | | | | (_| |   &amp;lt;  __/_____| (_| | (_| | || (_| |
|_| |_| |_|\__,_|_|\_\___|      \__,_|\__,_|\__\__,_|

;

options validvarname=upcase;
libname sd1 "d:/sd1";
data sd1.have;
input nums @@;
cards4;
3 15 24 28 33 35 38 42 43 38 36 34 29 25 17 7 34 36 39 44 31
26 20 11 13 22 27 47 39 37 34 32 35 28 38 41 48 15 32 13
14 22 35 48 31 42 43 14 30 10
;;;;
run;quit;

*____                 _       _   _
|  _ \      ___  ___ | |_   _| |_(_) ___  _ __
| |_) |____/ __|/ _ \| | | | | __| |/ _ \| '_ \
|  _ &amp;lt;_____\__ \ (_) | | |_| | |_| | (_) | | | |
|_| \_\    |___/\___/|_|\__,_|\__|_|\___/|_| |_|

;

%utl_submit_wps64('
libname sd1 "d:/sd1";
options set=R_HOME "C:/Program Files/R/R-3.3.2";
libname wrk "%sysfunc(pathname(work))";
proc r;
submit;
library(haven);
have&amp;lt;-read_sas("d:/sd1/have.sas7bdat");
c1 &amp;lt;- cut(have$NUMS, breaks = seq(0, 50, by = 5));
c1;
c2&amp;lt;-as.data.frame(table(c1));
endsubmit;
import r=c2 data=wrk.c2wps;
import r=c1 data=wrk.c1wps;
run;quit;
');

data cutval;
  merge c1wps sd1.have;
run;quit;

/*
Up to 40 obs WORK.CUTVAL total obs=50

Obs      C1       NUMS

  1    (0,5]        3
  2    (10,15]     15
  3    (20,25]     24
  4    (25,30]     28
  5    (30,35]     33
  6    (30,35]     35
  7    (35,40]     38
  8    (40,45]     42
*/


proc means data=cutval mean std clm;
class c1;
var nums;
run;quit;


NOTE: Using R version 3.3.2 (2016-10-31) from C:/Program Files/R/R-3.3.2

NOTE: Submitting statements to R:

&amp;gt; library(haven);
&amp;gt; have&amp;lt;-read_sas("d:/sd1/have.sas7bdat");
&amp;gt; c1 &amp;lt;- cut(have$NUMS, breaks = seq(0, 50, by = 5));
&amp;gt; c1;
&amp;gt; c2&amp;lt;-as.data.frame(table(c1));

NOTE: Processing of R statements complete

12        import r=c2 data=wrk.c2wps;
NOTE: Creating data set 'WRK.c2wps' from R data frame 'c2'
NOTE: Column names modified during import of 'c2'
NOTE: Data set "WRK.c2wps" has 10 observation(s) and 2 variable(s)

13        import r=c1 data=wrk.c1wps;
NOTE: Creating data set 'WRK.c1wps' from R data frame 'c1'

NOTE: Column names modified during import of 'c1'

NOTE: Data set "WRK.c1wps" has 50 observation(s) and 1 variable(s)

14        run;
NOTE: Procedure r step took :
      real time : 0.655
      cpu time  : 0.015


15        quit;

NOTE: Submitted statements took :
      real time : 0.702
      cpu time  : 0.046

&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Wed, 05 Apr 2017 15:37:26 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Class-confidence-intervals/m-p/347438#M273318</guid>
      <dc:creator>rogerjdeangelis</dc:creator>
      <dc:date>2017-04-05T15:37:26Z</dc:date>
    </item>
    <item>
      <title>Re: Class (confidence) intervals</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Class-confidence-intervals/m-p/347451#M273319</link>
      <description>proc freq;&lt;BR /&gt; 110            table x;&lt;BR /&gt; 111            format xf.;&lt;BR /&gt;                       ___&lt;BR /&gt;                       22&lt;BR /&gt;                       76&lt;BR /&gt; ERROR 22-322: Syntax error, expecting one of the following: a name, _ALL_, _CHARACTER_, _CHAR_, _NUMERIC_.  &lt;BR /&gt; ERROR 76-322: Syntax error, statement will be ignored.</description>
      <pubDate>Wed, 05 Apr 2017 16:05:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Class-confidence-intervals/m-p/347451#M273319</guid>
      <dc:creator>jonatan_velarde</dc:creator>
      <dc:date>2017-04-05T16:05:08Z</dc:date>
    </item>
    <item>
      <title>Re: Class (confidence) intervals</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Class-confidence-intervals/m-p/347457#M273320</link>
      <description>&lt;P&gt;Where's the data = in proc freq? Check proc before as well for no errors.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 05 Apr 2017 16:33:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Class-confidence-intervals/m-p/347457#M273320</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2017-04-05T16:33:08Z</dc:date>
    </item>
    <item>
      <title>Re: Class (confidence) intervals</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Class-confidence-intervals/m-p/347720#M273321</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/50712"&gt;@jonatan_velarde&lt;/a&gt; wrote:&lt;BR /&gt;proc freq;&lt;BR /&gt; 110 table x;&lt;BR /&gt; 111 format xf.;&lt;BR /&gt; ___&lt;BR /&gt; 22&lt;BR /&gt; 76&lt;BR /&gt; ERROR 22-322: Syntax error, expecting one of the following: a name, _ALL_, _CHARACTER_, _CHAR_, _NUMERIC_. &lt;BR /&gt; ERROR 76-322: Syntax error, statement will be ignored.&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Simple omission on my part. The command should be&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;format x xf.;&lt;/P&gt;</description>
      <pubDate>Thu, 06 Apr 2017 13:49:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Class-confidence-intervals/m-p/347720#M273321</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2017-04-06T13:49:57Z</dc:date>
    </item>
  </channel>
</rss>

