<?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 מיזוג חוזר של נתונים סיכומיים in SAS Users Group in Israel</title>
    <link>https://communities.sas.com/t5/SAS-Users-Group-in-Israel/%D7%9E%D7%99%D7%96%D7%95%D7%92-%D7%97%D7%95%D7%96%D7%A8-%D7%A9%D7%9C-%D7%A0%D7%AA%D7%95%D7%A0%D7%99%D7%9D-%D7%A1%D7%99%D7%9B%D7%95%D7%9E%D7%99%D7%99%D7%9D/m-p/657648#M52</link>
    <description>&lt;P class="lia-align-right" style="direction: rtl;"&gt;לעיתים אנחנו צריכים לבצע חישובים שונים המבוססים על נתונים סיכומיים של הרשומות שלנו. לדוגמא ההפרש בין הגיל של כל ילד לזה של הילד הצעיר ביותר בטבלה. כמובן שיש מגוון דרכים לבצע את זה אבל &lt;SPAN&gt;SAS&lt;/SPAN&gt; מאפשרת לנו לחסוך קצת עבודה ולעשות חישוב שכזה בשאילתת &lt;SPAN&gt;SQL&lt;/SPAN&gt; אחת:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql noprint;
	create table CLASS_DIFF as 
	select 
		*,
		age-min(age) as Age_Diff 
	from 
		sashelp.class;
quit;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="lia-align-right" style="direction: rtl;"&gt;שימו לב שהשתמשנו בפונקציה סיכומית (min) בשאילתה אבל ללא החלק של ה – group by. מבט בלוג מראה ש - SAS שמה לב שמשהו פה מוזר וכתבה לנו את ההערה הזו:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;NOTE: The query requires remerging summary statistics back with the original data
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="lia-align-right" style="direction: rtl;"&gt;אבל במקרה הזה, זה בדיוק מה שרצינו. SAS חישבה את המינימום הטבלאי ו – "מרחה" את הערך שהתקבל על פני כל השורות כך שיכולנו להשתמש בו בחישוב שלנו עבור כל שורה ושורה.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="lia-align-right" style="direction: rtl;"&gt;מסתבר שניתן לקחת את זה עוד קצת ולבקש חישוב סיכומי גם עבור תתי קבוצות. למשל:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql noprint;
	create table CLASS_WEIGHT_RATIO as 
	select 
		*,
		weight/max(weight) as Weight_Ratio 
	from 
		sashelp.class
	group by 
		sex;
quit;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="lia-align-right" style="direction: rtl;"&gt;הפעם כן הוספנו את החלק של ה – group by &amp;nbsp;אבל לא כללנו בו את כל השדות הרלוונטיים אלא רק את השדה של המגדר ולכן קיבלנו חישוב נפרד של המקסימום לנשים ולגברים.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="lia-align-right" style="direction: rtl;"&gt;חגי&lt;/P&gt;</description>
    <pubDate>Thu, 18 Jun 2020 19:58:13 GMT</pubDate>
    <dc:creator>Hagay</dc:creator>
    <dc:date>2020-06-18T19:58:13Z</dc:date>
    <item>
      <title>מיזוג חוזר של נתונים סיכומיים</title>
      <link>https://communities.sas.com/t5/SAS-Users-Group-in-Israel/%D7%9E%D7%99%D7%96%D7%95%D7%92-%D7%97%D7%95%D7%96%D7%A8-%D7%A9%D7%9C-%D7%A0%D7%AA%D7%95%D7%A0%D7%99%D7%9D-%D7%A1%D7%99%D7%9B%D7%95%D7%9E%D7%99%D7%99%D7%9D/m-p/657648#M52</link>
      <description>&lt;P class="lia-align-right" style="direction: rtl;"&gt;לעיתים אנחנו צריכים לבצע חישובים שונים המבוססים על נתונים סיכומיים של הרשומות שלנו. לדוגמא ההפרש בין הגיל של כל ילד לזה של הילד הצעיר ביותר בטבלה. כמובן שיש מגוון דרכים לבצע את זה אבל &lt;SPAN&gt;SAS&lt;/SPAN&gt; מאפשרת לנו לחסוך קצת עבודה ולעשות חישוב שכזה בשאילתת &lt;SPAN&gt;SQL&lt;/SPAN&gt; אחת:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql noprint;
	create table CLASS_DIFF as 
	select 
		*,
		age-min(age) as Age_Diff 
	from 
		sashelp.class;
quit;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="lia-align-right" style="direction: rtl;"&gt;שימו לב שהשתמשנו בפונקציה סיכומית (min) בשאילתה אבל ללא החלק של ה – group by. מבט בלוג מראה ש - SAS שמה לב שמשהו פה מוזר וכתבה לנו את ההערה הזו:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;NOTE: The query requires remerging summary statistics back with the original data
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="lia-align-right" style="direction: rtl;"&gt;אבל במקרה הזה, זה בדיוק מה שרצינו. SAS חישבה את המינימום הטבלאי ו – "מרחה" את הערך שהתקבל על פני כל השורות כך שיכולנו להשתמש בו בחישוב שלנו עבור כל שורה ושורה.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="lia-align-right" style="direction: rtl;"&gt;מסתבר שניתן לקחת את זה עוד קצת ולבקש חישוב סיכומי גם עבור תתי קבוצות. למשל:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql noprint;
	create table CLASS_WEIGHT_RATIO as 
	select 
		*,
		weight/max(weight) as Weight_Ratio 
	from 
		sashelp.class
	group by 
		sex;
quit;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="lia-align-right" style="direction: rtl;"&gt;הפעם כן הוספנו את החלק של ה – group by &amp;nbsp;אבל לא כללנו בו את כל השדות הרלוונטיים אלא רק את השדה של המגדר ולכן קיבלנו חישוב נפרד של המקסימום לנשים ולגברים.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="lia-align-right" style="direction: rtl;"&gt;חגי&lt;/P&gt;</description>
      <pubDate>Thu, 18 Jun 2020 19:58:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Users-Group-in-Israel/%D7%9E%D7%99%D7%96%D7%95%D7%92-%D7%97%D7%95%D7%96%D7%A8-%D7%A9%D7%9C-%D7%A0%D7%AA%D7%95%D7%A0%D7%99%D7%9D-%D7%A1%D7%99%D7%9B%D7%95%D7%9E%D7%99%D7%99%D7%9D/m-p/657648#M52</guid>
      <dc:creator>Hagay</dc:creator>
      <dc:date>2020-06-18T19:58:13Z</dc:date>
    </item>
  </channel>
</rss>

