<?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>Thema "Betreff: Einlesen einer (verdammt) kleinen Zahl" in CoDe SAS German</title>
    <link>https://communities.sas.com/t5/CoDe-SAS-German/Einlesen-einer-verdammt-kleinen-Zahl/m-p/652571#M2653</link>
    <description>&lt;P&gt;Hallo,&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/40178"&gt;@CKothenschulte&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;am einfachsten, finde ich, geht es &lt;EM&gt;ohne&lt;/EM&gt; Informat:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
infile datalines dsd;
input number;
datalines;
"6.3565654996227266482910694597574421E-06"
"-.00042565614666475080712238147739801544"
;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;(Die DSD-Option sorgt dafür, dass die Anführungszeichen nicht stören.)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Wenn man unbedingt ein Informat angeben will, kann man das Standard-Informat &lt;A href="https://documentation.sas.com/?docsetId=leforinforref&amp;amp;docsetTarget=n14sqpf1cubqknn1vmkzkp1oph87.htm&amp;amp;docsetVersion=9.4&amp;amp;locale=en" target="_blank" rel="noopener"&gt;&lt;EM&gt;w.d&lt;/EM&gt;&lt;/A&gt; verwenden:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;input number :1.;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Beim (modifizierten) List-Input wird ja die angegebene Informat-Länge (hier: 1) sowieso nicht benutzt und kann sogar weggelassen werden. Für Letzteres muss man hier mangels Buchstaben im Informatnamen auf einen Alias von &lt;EM&gt;w.d&lt;/EM&gt; ausweichen, z. B. E&lt;EM&gt;w.d&lt;/EM&gt;:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;input number :e.;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Tue, 02 Jun 2020 14:58:11 GMT</pubDate>
    <dc:creator>FreelanceReinh</dc:creator>
    <dc:date>2020-06-02T14:58:11Z</dc:date>
    <item>
      <title>Einlesen einer (verdammt) kleinen Zahl</title>
      <link>https://communities.sas.com/t5/CoDe-SAS-German/Einlesen-einer-verdammt-kleinen-Zahl/m-p/652478#M2649</link>
      <description>&lt;P&gt;Hallo zusammen,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;ich traue mich es kaum zu fragen: Kann man mit SAS folgende Zahl einlesen?&lt;/P&gt;
&lt;P&gt;6.3565654996227266482910694597574421E-06&lt;/P&gt;
&lt;P&gt;Wenn ja: Mit welchem Informat?&lt;/P&gt;
&lt;P&gt;Die Zahl liegt in einer CSV-Datei vor und ist dort mit '"'-Zeichen ("Gänsefüßchen") maskiert.&lt;/P&gt;
&lt;P&gt;Per Google bin ich nicht fündig geworden. Die numerischen Formate sind auf 32 Zeichen begrenzt, so dass ich bei der Breite der Zahl vermute, dass dies so nicht so einfach möglich ist.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Zur Not muss ich die Zahl als Text einlesen und dann nach "E" scannen, um selber zu rechnen. Aber das ist natürlich fehleranfällig und umständlich.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Andere Zahlen aus der Eingabedatei (ohne "E") lassen sich einlesen, z.B.:&lt;/P&gt;
&lt;P&gt;-.00042565614666475080712238147739801544&lt;/P&gt;
&lt;P&gt;(Allerdings natürlich nicht alle Nachkommastellen!)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Vielen Dank vorab!&lt;/P&gt;</description>
      <pubDate>Tue, 02 Jun 2020 10:57:14 GMT</pubDate>
      <guid>https://communities.sas.com/t5/CoDe-SAS-German/Einlesen-einer-verdammt-kleinen-Zahl/m-p/652478#M2649</guid>
      <dc:creator>CKothenschulte</dc:creator>
      <dc:date>2020-06-02T10:57:14Z</dc:date>
    </item>
    <item>
      <title>Betreff: Einlesen einer (verdammt) kleinen Zahl</title>
      <link>https://communities.sas.com/t5/CoDe-SAS-German/Einlesen-einer-verdammt-kleinen-Zahl/m-p/652508#M2650</link>
      <description>&lt;P&gt;Das muss man zuerst als Character lesen und dann konvertieren:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
infile datalines dsd;
input string :$50.;
if indexc(string,'E') &amp;gt; 18
then string = substr(string,1,18) !! substr(string,indexc(string,'E'));
number = input(string,32.);
format number best32.;
datalines;
"6.3565654996227266482910694597574421E-06"
"-.00042565614666475080712238147739801544"
;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 02 Jun 2020 11:46:03 GMT</pubDate>
      <guid>https://communities.sas.com/t5/CoDe-SAS-German/Einlesen-einer-verdammt-kleinen-Zahl/m-p/652508#M2650</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2020-06-02T11:46:03Z</dc:date>
    </item>
    <item>
      <title>Betreff: Einlesen einer (verdammt) kleinen Zahl</title>
      <link>https://communities.sas.com/t5/CoDe-SAS-German/Einlesen-einer-verdammt-kleinen-Zahl/m-p/652511#M2651</link>
      <description>&lt;P&gt;Danke &lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/11562"&gt;@Kurt_Bremser&lt;/a&gt;&amp;nbsp;für die schnelle Antwort!&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Das hatte ich leider "befürchtet".&lt;/P&gt;
&lt;P&gt;Aber der Code ist ja überschaubar und damit haben wir eine gute Lösung in der Hinterhand für den Notfall.&lt;/P&gt;</description>
      <pubDate>Tue, 02 Jun 2020 11:51:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/CoDe-SAS-German/Einlesen-einer-verdammt-kleinen-Zahl/m-p/652511#M2651</guid>
      <dc:creator>CKothenschulte</dc:creator>
      <dc:date>2020-06-02T11:51:24Z</dc:date>
    </item>
    <item>
      <title>Betreff: Einlesen einer (verdammt) kleinen Zahl</title>
      <link>https://communities.sas.com/t5/CoDe-SAS-German/Einlesen-einer-verdammt-kleinen-Zahl/m-p/652516#M2652</link>
      <description>&lt;P&gt;Einlesen wird schon ein antwort bekommen.&lt;BR /&gt;Die frage ist welche genauhigheit benotigt ist.&amp;nbsp; Ich sehe en lange reihe ciffern.&amp;nbsp; Bei 12 - vorsicht. &amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;&lt;FONT style="background-color: #ffffff;"&gt;&lt;A href="http://de.saswiki.org/images/c/cc/20_KSFE_2016_Lehrkamp_-_Nicht_jede_Zahl_ist_das_was_sie_zu_sein_scheint.pdf" target="_blank"&gt;http://de.saswiki.org/images/c/cc/20_KSFE_2016_Lehrkamp_-_Nicht_jede_Zahl_ist_das_was_sie_zu_sein_scheint.pdf&lt;/A&gt;&lt;/FONT&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 02 Jun 2020 11:56:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/CoDe-SAS-German/Einlesen-einer-verdammt-kleinen-Zahl/m-p/652516#M2652</guid>
      <dc:creator>jakarman</dc:creator>
      <dc:date>2020-06-02T11:56:39Z</dc:date>
    </item>
    <item>
      <title>Betreff: Einlesen einer (verdammt) kleinen Zahl</title>
      <link>https://communities.sas.com/t5/CoDe-SAS-German/Einlesen-einer-verdammt-kleinen-Zahl/m-p/652571#M2653</link>
      <description>&lt;P&gt;Hallo,&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/40178"&gt;@CKothenschulte&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;am einfachsten, finde ich, geht es &lt;EM&gt;ohne&lt;/EM&gt; Informat:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
infile datalines dsd;
input number;
datalines;
"6.3565654996227266482910694597574421E-06"
"-.00042565614666475080712238147739801544"
;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;(Die DSD-Option sorgt dafür, dass die Anführungszeichen nicht stören.)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Wenn man unbedingt ein Informat angeben will, kann man das Standard-Informat &lt;A href="https://documentation.sas.com/?docsetId=leforinforref&amp;amp;docsetTarget=n14sqpf1cubqknn1vmkzkp1oph87.htm&amp;amp;docsetVersion=9.4&amp;amp;locale=en" target="_blank" rel="noopener"&gt;&lt;EM&gt;w.d&lt;/EM&gt;&lt;/A&gt; verwenden:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;input number :1.;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Beim (modifizierten) List-Input wird ja die angegebene Informat-Länge (hier: 1) sowieso nicht benutzt und kann sogar weggelassen werden. Für Letzteres muss man hier mangels Buchstaben im Informatnamen auf einen Alias von &lt;EM&gt;w.d&lt;/EM&gt; ausweichen, z. B. E&lt;EM&gt;w.d&lt;/EM&gt;:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;input number :e.;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 02 Jun 2020 14:58:11 GMT</pubDate>
      <guid>https://communities.sas.com/t5/CoDe-SAS-German/Einlesen-einer-verdammt-kleinen-Zahl/m-p/652571#M2653</guid>
      <dc:creator>FreelanceReinh</dc:creator>
      <dc:date>2020-06-02T14:58:11Z</dc:date>
    </item>
    <item>
      <title>Betreff: Einlesen einer (verdammt) kleinen Zahl</title>
      <link>https://communities.sas.com/t5/CoDe-SAS-German/Einlesen-einer-verdammt-kleinen-Zahl/m-p/652755#M2654</link>
      <description>&lt;P&gt;Wow, wieder was gelernt!&lt;/P&gt;
&lt;P&gt;Vielen Dank&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/32733"&gt;@FreelanceReinh&lt;/a&gt;!&lt;/P&gt;</description>
      <pubDate>Wed, 03 Jun 2020 04:48:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/CoDe-SAS-German/Einlesen-einer-verdammt-kleinen-Zahl/m-p/652755#M2654</guid>
      <dc:creator>CKothenschulte</dc:creator>
      <dc:date>2020-06-03T04:48:40Z</dc:date>
    </item>
    <item>
      <title>Betreff: Einlesen einer (verdammt) kleinen Zahl</title>
      <link>https://communities.sas.com/t5/CoDe-SAS-German/Einlesen-einer-verdammt-kleinen-Zahl/m-p/652779#M2655</link>
      <description>&lt;P&gt;Abschließend noch die Info, dass (bei beiden Varianten) Nachkommastellen abgeschnitten werden:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
infile datalines dsd;
attrib number format=32.29;
input number;
put number;
datalines;
"6.3565654996227266482910694597574421E-06"
"-.00042565614666475080712238147739801544"
;
/*
0.00000635656549962273000000000
-0.00042565614666475000000000000
*/
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
infile datalines dsd;
input string :$50.;
if indexc(string,'E') &amp;gt; 18
then string = substr(string,1,18) !! substr(string,indexc(string,'E'));
number = input(string,32.);
format number 32.29;
put number;
datalines;
"6.3565654996227266482910694597574421E-06"
"-.00042565614666475080712238147739801544"
;
/*
0.00000635656549962272000000000
-0.00042565614666475000000000000
*/
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Im Kommentar sieht man die Ausgabe des PUT-Befehls aus dem Log.&lt;/P&gt;</description>
      <pubDate>Wed, 03 Jun 2020 07:56:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/CoDe-SAS-German/Einlesen-einer-verdammt-kleinen-Zahl/m-p/652779#M2655</guid>
      <dc:creator>CKothenschulte</dc:creator>
      <dc:date>2020-06-03T07:56:38Z</dc:date>
    </item>
  </channel>
</rss>

