<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: how to programm this simple matrix properly in datascript or sql? in New SAS User</title>
    <link>https://communities.sas.com/t5/New-SAS-User/how-to-programm-this-simple-matrix-properly-in-datascript-or-sql/m-p/576072#M12994</link>
    <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/281554"&gt;@PierreYvesILY&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I would create two formats and apply them using the &lt;A href="https://documentation.sas.com/?docsetId=lefunctionsref&amp;amp;docsetTarget=p12zqzvwx4dv6kn1p9crijxswolk.htm&amp;amp;docsetVersion=9.4&amp;amp;locale=en" target="_blank" rel="noopener"&gt;PUTN function&lt;/A&gt;, e.g.:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc format;
value rsk0f
low  - 1.6  = 'A+'
1.6&amp;lt; - 2.6  = 'A'
/* ... */
4.6&amp;lt; - high = 'X'
other       = '??';

value rsk1f
low  - 3.4  = 'A+'
/* ... */
4.6&amp;lt; - high = 'X'
other       = '??';
run;

data want;
set have;
length rsk $2;
rsk=putn(br,cats('rsk',nkm,'f'));
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Wed, 24 Jul 2019 08:47:31 GMT</pubDate>
    <dc:creator>FreelanceReinh</dc:creator>
    <dc:date>2019-07-24T08:47:31Z</dc:date>
    <item>
      <title>how to programm this simple matrix properly in datascript or sql?</title>
      <link>https://communities.sas.com/t5/New-SAS-User/how-to-programm-this-simple-matrix-properly-in-datascript-or-sql/m-p/576063#M12989</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I need to programm the following:&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;RSK&lt;/TD&gt;&lt;TD&gt;NKM&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;BR&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;lt;= 1,6&lt;/TD&gt;&lt;TD&gt;A+&lt;/TD&gt;&lt;TD&gt;A+&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;lt;= 2,6&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;A+&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;lt;= 3&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;A+&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;lt;= 3,4&lt;/TD&gt;&lt;TD&gt;C&lt;/TD&gt;&lt;TD&gt;A+&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;lt;= 3,6&lt;/TD&gt;&lt;TD&gt;C&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;lt;= 3,8&lt;/TD&gt;&lt;TD&gt;C&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;lt;= 4&lt;/TD&gt;&lt;TD&gt;C&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;lt;= 4,2&lt;/TD&gt;&lt;TD&gt;D&lt;/TD&gt;&lt;TD&gt;C&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;lt;= 4,6&lt;/TD&gt;&lt;TD&gt;D&lt;/TD&gt;&lt;TD&gt;D&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;gt; 4,6&lt;/TD&gt;&lt;TD&gt;X&lt;/TD&gt;&lt;TD&gt;X&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;BR values are in the 1st column&lt;/P&gt;&lt;P&gt;NKM values are in the 2nd line, column 2 and 3.&lt;/P&gt;&lt;P&gt;The result is RSK and is given in the matrix (BR, NKM).&lt;/P&gt;&lt;P&gt;For instance: BR &amp;lt;= 4 and NKM = 0 is RSK = C.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I started in the proc sql step with the code:&lt;/P&gt;&lt;P&gt;&lt;FONT face="Courier New" size="3"&gt;(&lt;/FONT&gt;&lt;FONT color="#0000ff" face="Courier New" size="3"&gt;case&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#0000ff" face="Courier New" size="3"&gt;when&lt;/FONT&gt;&lt;FONT face="Courier New" size="3"&gt; BR = &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;.&lt;/FONT&gt;&lt;/STRONG&gt; and NKM = 0 &lt;FONT color="#0000ff" face="Courier New" size="3"&gt;then&lt;/FONT&gt; &lt;FONT color="#800080" face="Courier New" size="3"&gt;'??'&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#0000ff" face="Courier New" size="3"&gt;when&lt;/FONT&gt;&lt;FONT face="Courier New" size="3"&gt; BR &amp;lt;= &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;1.6&lt;/FONT&gt;&lt;/STRONG&gt; and NKM = 0 &lt;FONT color="#0000ff" face="Courier New" size="3"&gt;then&lt;/FONT&gt; &lt;FONT color="#800080" face="Courier New" size="3"&gt;'A+'&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#0000ff" face="Courier New" size="3"&gt;when&lt;/FONT&gt;&lt;FONT face="Courier New" size="3"&gt; BR &amp;lt;= &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;2.6&lt;/FONT&gt;&lt;/STRONG&gt; and NKM = 0 &lt;FONT color="#0000ff" face="Courier New" size="3"&gt;then&lt;/FONT&gt; &lt;FONT color="#800080" face="Courier New" size="3"&gt;'A '&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#0000ff" face="Courier New" size="3"&gt;when&lt;/FONT&gt;&lt;FONT face="Courier New" size="3"&gt; BR &amp;lt;= &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;3.0&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;and NKM = 0 &lt;FONT color="#0000ff" face="Courier New" size="3"&gt;then&lt;/FONT&gt; &lt;FONT color="#800080" face="Courier New" size="3"&gt;'B '&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#0000ff" face="Courier New" size="3"&gt;when&lt;/FONT&gt;&lt;FONT face="Courier New" size="3"&gt; BR &amp;lt;= &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;3.6&lt;/FONT&gt;&lt;/STRONG&gt; and NKM = 0 &lt;FONT color="#0000ff" face="Courier New" size="3"&gt;then&lt;/FONT&gt; &lt;FONT color="#800080" face="Courier New" size="3"&gt;'C '&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#0000ff" face="Courier New" size="3"&gt;when&lt;/FONT&gt;&lt;FONT face="Courier New" size="3"&gt; BR &amp;lt;= &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;4.2&lt;/FONT&gt;&lt;/STRONG&gt; and NKM = 0 &lt;FONT color="#0000ff" face="Courier New" size="3"&gt;then&lt;/FONT&gt; &lt;FONT color="#800080" face="Courier New" size="3"&gt;'D '&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#0000ff" face="Courier New" size="3"&gt;when&lt;/FONT&gt;&lt;FONT face="Courier New" size="3"&gt; BR &amp;gt; &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;4.2&lt;/FONT&gt;&lt;/STRONG&gt; and NKM = 0 &lt;FONT color="#0000ff" face="Courier New" size="3"&gt;then&lt;/FONT&gt; &lt;FONT color="#800080" face="Courier New" size="3"&gt;'X '&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#0000ff" face="Courier New" size="3"&gt;else&lt;/FONT&gt; &lt;FONT color="#800080" face="Courier New" size="3"&gt;'??'&lt;/FONT&gt; &lt;FONT color="#0000ff" face="Courier New" size="3"&gt;end&lt;/FONT&gt;&lt;FONT face="Courier New" size="3"&gt;) &lt;/FONT&gt;&lt;FONT color="#0000ff" face="Courier New" size="3"&gt;as&lt;/FONT&gt;&lt;FONT face="Courier New" size="3"&gt; RSK, &lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="Courier New" size="3"&gt;but it doesn't work properly. In Addition, I have to programm the case and NKM = 1, with different values of BR as in the table.&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="Courier New" size="3"&gt;What is the right way to do?&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 24 Jul 2019 08:18:21 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/how-to-programm-this-simple-matrix-properly-in-datascript-or-sql/m-p/576063#M12989</guid>
      <dc:creator>PierreYvesILY</dc:creator>
      <dc:date>2019-07-24T08:18:21Z</dc:date>
    </item>
    <item>
      <title>Re: how to programm this simple matrix properly in datascript or sql?</title>
      <link>https://communities.sas.com/t5/New-SAS-User/how-to-programm-this-simple-matrix-properly-in-datascript-or-sql/m-p/576072#M12994</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/281554"&gt;@PierreYvesILY&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I would create two formats and apply them using the &lt;A href="https://documentation.sas.com/?docsetId=lefunctionsref&amp;amp;docsetTarget=p12zqzvwx4dv6kn1p9crijxswolk.htm&amp;amp;docsetVersion=9.4&amp;amp;locale=en" target="_blank" rel="noopener"&gt;PUTN function&lt;/A&gt;, e.g.:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc format;
value rsk0f
low  - 1.6  = 'A+'
1.6&amp;lt; - 2.6  = 'A'
/* ... */
4.6&amp;lt; - high = 'X'
other       = '??';

value rsk1f
low  - 3.4  = 'A+'
/* ... */
4.6&amp;lt; - high = 'X'
other       = '??';
run;

data want;
set have;
length rsk $2;
rsk=putn(br,cats('rsk',nkm,'f'));
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 24 Jul 2019 08:47:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/how-to-programm-this-simple-matrix-properly-in-datascript-or-sql/m-p/576072#M12994</guid>
      <dc:creator>FreelanceReinh</dc:creator>
      <dc:date>2019-07-24T08:47:31Z</dc:date>
    </item>
    <item>
      <title>Re: how to programm this simple matrix properly in datascript or sql?</title>
      <link>https://communities.sas.com/t5/New-SAS-User/how-to-programm-this-simple-matrix-properly-in-datascript-or-sql/m-p/576126#M13011</link>
      <description>&lt;P&gt;super! danke, es funktioniert total gut.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;VG aus München&lt;/P&gt;&lt;P&gt;PY&lt;/P&gt;</description>
      <pubDate>Wed, 24 Jul 2019 12:13:10 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/how-to-programm-this-simple-matrix-properly-in-datascript-or-sql/m-p/576126#M13011</guid>
      <dc:creator>PierreYvesILY</dc:creator>
      <dc:date>2019-07-24T12:13:10Z</dc:date>
    </item>
  </channel>
</rss>

