<?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>New library articles in SAS Support Communities</title>
    <link>https://communities.sas.com/</link>
    <description>SAS Support Communities</description>
    <pubDate>Tue, 30 Apr 2024 13:47:34 GMT</pubDate>
    <dc:creator>Community</dc:creator>
    <dc:date>2024-04-30T13:47:34Z</dc:date>
    <item>
      <title>[SAS/R] 표준편차 - 조건절 활용</title>
      <link>https://communities.sas.com/t5/SAS-Tech-Tip/SAS-R-%ED%91%9C%EC%A4%80%ED%8E%B8%EC%B0%A8-%EC%A1%B0%EA%B1%B4%EC%A0%88-%ED%99%9C%EC%9A%A9/ta-p/926445</link>
      <description>&lt;DIV class="lia-message-template-content-zone"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;본 게시글은 SAS와 R 코드를 비교하는 글로 &lt;/SPAN&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;표준편차에 조건절을 활용한 코드&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;를 비교하려고 합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;UL class="se-text-list se-text-list-type-bullet-disc"&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;​표준편차(Standard Deviation) &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;표준편차란 평균에 대한 오차입니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;데이터 값이 평균을 기준으로 할 때, 각 데이터가 얼마나 흩어져 있는지를 확인하기 위해 사용됩니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="image (6).png" style="width: 382px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/96043iA7735B389F8619BB/image-size/medium?v=v2&amp;amp;px=400" role="button" title="image (6).png" alt="image (6).png" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV id="SE-5565160a-f483-4a34-ab76-45e629e2d3cd" class="se-component se-image se-l-default"&gt;
&lt;DIV class="se-component-content se-component-content-normal"&gt;
&lt;DIV class="se-section se-section-image se-l-default se-section-align-center"&gt;
&lt;DIV class="se-module se-module-text se-caption"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-  lia-align-center"&gt;&lt;SPAN class="se-fs- se-ff-   "&gt;첨부: &lt;/SPAN&gt;&lt;SPAN class="se-fs- se-ff- se-weight-unset  "&gt;&lt;A class="se-link" href="https://commons.wikimedia.org/wiki/File:Standard_deviation_illustration.gif" target="_blank" rel="noopener"&gt;https://commons.wikimedia.org/wiki/File:Standard_deviation_illustration.gif&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;DIV id="SE-e743182a-b828-49c7-b000-f8b6795f3dc5" class="se-component se-text se-l-default"&gt;
&lt;DIV class="se-component-content"&gt;
&lt;DIV class="se-section se-section-text se-l-default"&gt;
&lt;DIV class="se-module se-module-text"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;/DIV&gt;
&lt;DIV class="lia-message-template-content-zone"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="lia-message-template-content-zone"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="lia-message-template-content-zone"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs24 se-ff-system   "&gt;&lt;I&gt;&lt;STRONG&gt;Q. basic1.csv 데이터 셋에서 'f4'컬럼 값이 'ENFJ'와 'INFP'인 값들을 필터링 해 각 각 'f1' 칼럼의 표준편차 차이를 절대값으로 출력&lt;/STRONG&gt;&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;I&gt;&lt;STRONG&gt;- 사용 데이터 : basic1.csv&lt;/STRONG&gt;&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;I&gt;&lt;STRONG&gt;- 칼럼은 id / age / city / f1 / f2 / f3 / f4 / f5로 구성되어 있습니다. &lt;/STRONG&gt;&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="image (7).png" style="width: 773px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/96044i50A929EE8588105B/image-size/large?v=v2&amp;amp;px=999" role="button" title="image (7).png" alt="image (7).png" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;H3 class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;STRONG&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;[R]&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/H3&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;library(dplyr)
df=read.csv('../input/bigdatacertificationkr/basic1.csv')

df %&amp;gt;% 
   filter(f4=='ENFJ' | f4=='INFP') %&amp;gt;% 
   group_by(f4) %&amp;gt;% 
   summarise(value=sd(f1,na.rm=T)) %&amp;gt;% 
   select(value) %&amp;gt;% apply(2,diff) %&amp;gt;% 
   abs&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV id="SE-70e74906-4123-4db7-816a-ed984fc017d4" class="se-component se-text se-l-default"&gt;
&lt;DIV class="se-component-content"&gt;
&lt;DIV class="se-section se-section-text se-l-default"&gt;
&lt;DIV class="se-module se-module-text"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;1. library(dplyr) &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;R은 오픈소스 프로그램으로 많은 유저들이 통계 도구들을 만들어 온라인 상에 무료로 기능을 쓸 수 있게 배포합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;패키지를 사용하기 위해서는 1) 패키지를 설치하고 2) 패키지를 로드 합니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;1) insall.package(dplyr): 처음에 패키지를 설치하기 위해서 사용하는 명령문.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;2) library(dplyr): 패키지를 설치한 후, 패키지를 불러오기 위한 명령문&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;dplyr 이란 패키지를 불러옵니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;dplyr 패키지는 데이터 전처리에 특화된 패키지로 데이터를 처리하는 함수군으로 구성되어 있습니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;%&amp;gt;% 체인 연산자 기호와 함께 데이터 전처리에서 사용됩니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;2. read.csv&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;파일을 불러오는 명령문&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;3. group by&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;Group by function은 데이터를 그룹화하는데 사용합니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;특정 열을 기준으로 데이터를 그룹화해 집계 함수를 설정하면 그룹 단위의 결과값을 출력합니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;4. summarise&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;다양한 통계함수를 사용해서 데이터 셋의 특정 변수에 속한 값들을 하나의 통계값으로 요약하여 출력하는 function입니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;summaize()와 동일한 function으로 평균, 중위값, 최소값, 최대값, 분산, 표준편차, 4분위값, 합계, 빈도수 등을 출력할 수 있습니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;5. apply&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system se-weight-unset se-style-unset "&gt;행(Row) 또는 열(Column) 단위의 연산을 쉽게 할 수 있도록 지원하는 함수. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system se-weight-unset  "&gt;&lt;I&gt;​&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system se-weight-unset  "&gt;&lt;I&gt;​&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system se-weight-unset  "&gt;&lt;I&gt;* 행(1) 단위로 mean 연산&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;DIV id="SE-5d0de050-fe9d-476b-be95-59071d0b33c5" class="se-component se-code se-l-code_stripe __se-component"&gt;
&lt;DIV class="se-component-content"&gt;
&lt;DIV class="se-section se-section-code se-l-code_stripe"&gt;
&lt;DIV class="se-module se-module-code se-fs-fs13"&gt;
&lt;DIV class="se-code-source"&gt;
&lt;DIV class="__se_code_view language-javascript"&gt;&lt;SPAN class="token se-code-function"&gt;apply&lt;/SPAN&gt;&lt;SPAN class="token se-code-punctuation"&gt;(&lt;/SPAN&gt;iris&lt;SPAN class="token se-code-punctuation"&gt;,&lt;/SPAN&gt; &lt;SPAN class="token se-code-number"&gt;1&lt;/SPAN&gt;&lt;SPAN class="token se-code-punctuation"&gt;,&lt;/SPAN&gt; mean&lt;SPAN class="token se-code-punctuation"&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;DIV id="SE-d9f158e2-2264-4b64-ac15-6b65dc41f484" class="se-component se-text se-l-default"&gt;
&lt;DIV class="se-component-content"&gt;
&lt;DIV class="se-section se-section-text se-l-default"&gt;
&lt;DIV class="se-module se-module-text"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system se-weight-unset  "&gt;&lt;I&gt;위 코드는 iris 데이터를 행(1) 단위로 평균값을 구하는 코드입니다.&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system se-weight-unset  "&gt;&lt;I&gt;​&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system se-weight-unset  "&gt;&lt;I&gt;​&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system se-weight-unset  "&gt;&lt;I&gt;* 열(column) 단위로 mean 연산&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;DIV id="SE-0a560028-074d-41af-a0f4-86812ac63bf9" class="se-component se-code se-l-code_stripe __se-component"&gt;
&lt;DIV class="se-component-content"&gt;
&lt;DIV class="se-section se-section-code se-l-code_stripe"&gt;
&lt;DIV class="se-module se-module-code se-fs-fs13"&gt;
&lt;DIV class="se-code-source"&gt;
&lt;DIV class="__se_code_view language-javascript"&gt;&lt;SPAN class="token se-code-function"&gt;apply&lt;/SPAN&gt;&lt;SPAN class="token se-code-punctuation"&gt;(&lt;/SPAN&gt;iris&lt;SPAN class="token se-code-punctuation"&gt;,&lt;/SPAN&gt; &lt;SPAN class="token se-code-number"&gt;2&lt;/SPAN&gt;&lt;SPAN class="token se-code-punctuation"&gt;,&lt;/SPAN&gt; mean&lt;SPAN class="token se-code-punctuation"&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;DIV class="ssp-adcontent align_center"&gt;
&lt;DIV id="ssp-adcontent-2" class="ssp_adcontent_inner"&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;H3&gt;&lt;STRONG&gt;[SAS]&lt;/STRONG&gt;&lt;/H3&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;/* 1. */
proc import datafile="/home/u45061472/basic1.csv" out=df
    dbms=csv replace;
    getnames=yes;
run;

/* 2. */
data filtered;
    set df;
    where f4 in ('ENFJ', 'INFP');
run;

/* 3. */
proc means data=filtered noprint;
    class f4;
    var f1;
    output out=sd_values std=sd_f1;
run;

/* 4 */
data diff_sd;
    set sd_values;
    diff_sd = abs(sd_f1_ENFJ - sd_f1_INFP);
run;

/* 5. */
proc print data=diff_sd noobs;
    var diff_sd;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;1. PROC IMPORT&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN class="se-fs-fs15 se-ff-system   "&gt;&lt;I&gt;&lt;STRONG&gt;​&lt;/STRONG&gt;&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;외부 데이터를 불러오는 명령문입니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;UL class="se-text-list se-text-list-type-bullet-disc"&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;DATA = : 파일 위치 또는 파일명을 지정.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;DBMS = : 파일 형식을 설정.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;OUT = : 원본 데이터는 그대로 유지되고, 원하는 데이터 형식의 데이터를 생성합니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;REPLACE : 이미 데이터가 존재하면 데이터 세트를 덮어쓰는 것 입니다. 코드를 실행할 때마다 데이터 세트의 이름을 변경하거나 삭제할 필요가 없어서 실행 단계를 단순화 할 수 있습니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;2. Data filtered&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;새로운 filtered 라는 새로운 데이터셋을 생성합니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;set df: 기존에 있던 df 데이터 셋을 읽습니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;where f4 in ('ENFJ', 'INFP'): f4칼럼이 ENFJ 또는 INFP인 행들만 선택하는 조건절 입니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;3. Proc means&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;데이터의 통계요약을 보여주는 명령문입니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;noprint: 결과를 출력하지 않도록 설정합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;class f4: 그룹변수로 f4칼럼을 설정합니다. f4 변수의 각 범주에 대한 통계량을 계산합니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;var f1: 분석할 변수를 세팅합니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;​&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;​&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;4. Data diff_ed ~ &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;set sd_values: sd_values라는 데이터 셋을 하나씩 읽어옵니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;diff_Sd = abs(sd_f1_enfj - sd_f1_infp): ENFJ 그룹과 INFP 그룹의 표준편차를 계산합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="image.png" style="width: 999px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/96045iC6DE26E5508E74EC/image-size/large?v=v2&amp;amp;px=999" role="button" title="image.png" alt="image.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;/DIV&gt;</description>
      <pubDate>Tue, 30 Apr 2024 11:21:49 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Tech-Tip/SAS-R-%ED%91%9C%EC%A4%80%ED%8E%B8%EC%B0%A8-%EC%A1%B0%EA%B1%B4%EC%A0%88-%ED%99%9C%EC%9A%A9/ta-p/926445</guid>
      <dc:creator>AmeeKang</dc:creator>
      <dc:date>2024-04-30T11:21:49Z</dc:date>
    </item>
    <item>
      <title>[SAS/R] 결측치 제거 - Group by Sum</title>
      <link>https://communities.sas.com/t5/SAS-Tech-Tip/SAS-R-%EA%B2%B0%EC%B8%A1%EC%B9%98-%EC%A0%9C%EA%B1%B0-Group-by-Sum/ta-p/926440</link>
      <description>&lt;DIV class="lia-message-template-content-zone"&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify se-is-text-paragraph-block-selected"&gt;&lt;SPAN class="se-ff-system se-fs19 __se-node"&gt;&lt;STRONG&gt; 게시글은 SAS와 R언어를 활용하여 데이터 셋의 결측치를 제거하고, a 칼럼별의 조건 값을 기준으로 b칼럼(수치형)의 합계 (group by sum)를 구하고자 한다. &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify se-is-text-paragraph-block-selected"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify se-is-text-paragraph-block-selected"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify se-is-text-paragraph-block-selected"&gt;&lt;SPAN class="se-ff-system se-fs15 se-highlight __se-node"&gt;&lt;MARK&gt;&lt;I&gt;&lt;STRONG&gt;Q. basic1.csv 데이터셋 에서 'f1'컬럼 결측 데이터를 제거하고, city'와 'f2'을 기준으로 묶어 합계를 출력합니다.&lt;/STRONG&gt;&lt;/I&gt;&lt;/MARK&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify se-is-text-paragraph-block-selected"&gt;&lt;SPAN class="se-ff-system se-fs15 se-highlight __se-node"&gt;&lt;MARK&gt;&lt;I&gt;&lt;STRONG&gt; 또한, 'city가 경기이면서 f2가 0'인 조건에 만족하는 f1 값을 출력. &lt;/STRONG&gt;&lt;/I&gt;&lt;/MARK&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify se-is-text-paragraph-block-selected"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify se-is-text-paragraph-block-selected"&gt;&amp;nbsp;&lt;/P&gt;
&lt;H3 class="se-text-paragraph se-text-paragraph-align-justify se-is-text-paragraph-block-selected"&gt;&lt;STRONG&gt;[SAS]&lt;/STRONG&gt;&lt;/H3&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify se-is-text-paragraph-block-selected"&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;library(dplyr)
df=read.csv('../input/bigdatacertificationkr/basic1.csv')

df %&amp;gt;% 
   filter(!is.na(f1)) %&amp;gt;% 
   group_by(city,f2) %&amp;gt;% 
   summarise(value=sum(f1)) %&amp;gt;% 
   filter(city=='경기' &amp;amp; f2==0) %&amp;gt;% 
   data.frame %&amp;gt;% select(value)&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify se-is-text-paragraph-block-selected"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify se-is-text-paragraph-block-selected"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify se-is-text-paragraph-block-selected"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;1. library(dplyr)&lt;/STRONG&gt;​&lt;/P&gt;
&lt;P&gt;R은 오픈소스 프로그램으로 많은 유저들이 통계 도구들을 만들어 온라인 상에 무료로 기능을 쓸 수 있게 배포합니다.&lt;/P&gt;
&lt;P&gt;​&lt;/P&gt;
&lt;P&gt;패키지를 사용하기 위해서는 1) 패키지를 설치하고 2) 패키지를 로드 합니다.&lt;/P&gt;
&lt;P&gt;1) insall.package(dplyr): 처음에 패키지를 설치하기 위해서 사용하는 명령문.&lt;/P&gt;
&lt;P&gt;2) library(dplyr): 패키지를 설치한 후, 패키지를 불러오기 위한 명령문&lt;/P&gt;
&lt;P&gt;​&lt;/P&gt;
&lt;P&gt;dplyr 이란 패키지를 불러옵니다.&lt;/P&gt;
&lt;P&gt;dplyr 패키지는 데이터 전처리에 특화된 패키지로 데이터를 처리하는 함수군으로 구성되어 있습니다.&lt;/P&gt;
&lt;P&gt;%&amp;gt;% 체인 연산자 기호와 함께 데이터 전처리에서 사용됩니다.&lt;/P&gt;
&lt;P&gt;​​&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;2. read.csv&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;파일을 불러오는 명령문&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;3. Filter&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;하나 이상의 조건 값만을 데이터로 필터링 해서 결과값을 출력합니다.&lt;/P&gt;
&lt;P&gt;한가지 조건일 수도 있고 두 가지 이상의 조건일 수도 있습니다.&lt;/P&gt;
&lt;P&gt;두 가지 조건값이게 되면 '&amp;amp;' (and) '|' (or) 등과 같은 수학기호 연산자를 사용해서 조건 값을 늘려나갈 수 있습니다.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;df %&amp;gt;%
  filter(salary %in% c(18, 634, 1322)&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;위 %in% function은 여러개의 데이터를 불러올 때 사용합니다.&lt;/P&gt;
&lt;P&gt;Salary의 칼럼 중 18, 634, 1332의 값만을 필터링 하게 됩니다.&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;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;df %&amp;gt;% 
   filter(!is.na(f1)) %&amp;gt;%&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;is.na() 는 NA값을 표시하고, !is.na는 NA값을 제가 합니다.&lt;BR /&gt;즉, NA값이 아닌 데이터만을 필터링하게 됩니다.&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;&lt;STRONG&gt;4. group by&lt;/STRONG&gt;&lt;BR /&gt;Group by function은 데이터를 그룹화하는데 사용합니다.&lt;BR /&gt;특정 열을 기준으로 데이터를 그룹화해 집계 함수를 설정하면 그룹 단위의 결과값을 출력합니다.&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;&lt;STRONG&gt;5. summarise&lt;/STRONG&gt;&lt;BR /&gt;다양한 통계함수를 사용해서 데이터 셋의 특정 변수에 속한 값들을 하나의 통계값으로 요약하여 출력하는 function입니다.&lt;BR /&gt;summaize()와 동일한 function으로 평균, 중위값, 최소값, 최대값, 분산, 표준편차, 4분위값, 합계, 빈도수 등을 출력할 수 있습니다.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H3&gt;&lt;STRONG&gt;&amp;nbsp;[SAS]&amp;nbsp;&lt;/STRONG&gt;&lt;/H3&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;/* 1. */
proc import datafile='/home/u45061472/basic1.csv'
            out=mydata
            dbms=csv
            replace;
run;

/* 2. */
data cleaned_data;
    set mydata;
    where not missing(f1);
run;

/* 3. */
proc summary data=cleaned_data nway;
    class city f2;
    var f1;
    output out=sum_data sum=total_f1;
run;

/* 4.  */
proc print data=sum_data;
    title 'Sum of f1 grouped - city and f2';
    var city f2 total_f1;
run;

/* 5.  */
data filtered_data;
    set mydata;
    if city='경기' and f2=0;
run;

proc print data=filtered_data;
    title 'Values of f1 where city is 경기 and f2 is 0';
    var f1;
run;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&lt;BR /&gt;&lt;STRONG&gt;1. Proc Import&lt;/STRONG&gt;&lt;BR /&gt;​외부 데이터를 불러오기 위한 명령문 입니다.&lt;BR /&gt;DBMS: 로드할 파일 형식&lt;BR /&gt;OUT: sas 내부에 있는 work라이브러리의 mydata라는 셋을 만든다. 라는 의미를 갖고 있습니다.&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;&lt;STRONG&gt;2. Data Cleaned_data~&lt;/STRONG&gt;&lt;BR /&gt;새로운 데이터셋인 Cleaned_Data를 만듭니다.&lt;BR /&gt;set mydata: mydata 셋을 순차적으로 읽습니다.&lt;BR /&gt;where not missing(f1): where 은 조건절로 데이터 필터링에 사용하는 function입니다. not missing은 결측치가 아닌 값들을 출력하는 명령어 입니다.&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;&lt;STRONG&gt;3. Proc Summary&lt;/STRONG&gt;&lt;BR /&gt;데이터의 요약 통계를 생성하는데 사용합니다.&lt;BR /&gt;수치형 변수에 대한 평균, 중앙값, 합계, 최소값, 최대값 등의 통계량을 출력합니다.&lt;BR /&gt;nway: nway를 사용하지 않을 경우에는 지정된 변수들의 모든 가능한 조합에 대한 요약 통계량이 생성되지만, nway를 설정한 경우에는 class 문에 지정된 그룹 변수들을 기준으로 데이터를 그룹화하고 각 그룹에 대한 요약 통계량들을 생성합니다.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="image.png" style="width: 241px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/96041i0B21E83DABAF0A59/image-size/large?v=v2&amp;amp;px=999" role="button" title="image.png" alt="image.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="image.png" style="width: 300px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/96042iBEFB78460E9FF7D5/image-size/large?v=v2&amp;amp;px=999" role="button" title="image.png" alt="image.png" /&gt;&lt;/span&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;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;/DIV&gt;</description>
      <pubDate>Tue, 30 Apr 2024 11:09:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Tech-Tip/SAS-R-%EA%B2%B0%EC%B8%A1%EC%B9%98-%EC%A0%9C%EA%B1%B0-Group-by-Sum/ta-p/926440</guid>
      <dc:creator>AmeeKang</dc:creator>
      <dc:date>2024-04-30T11:09:06Z</dc:date>
    </item>
    <item>
      <title>[SAS/R] 왜도와 첨도</title>
      <link>https://communities.sas.com/t5/SAS-Tech-Tip/SAS-R-%EC%99%9C%EB%8F%84%EC%99%80-%EC%B2%A8%EB%8F%84/ta-p/926433</link>
      <description>&lt;DIV class="lia-message-template-content-zone"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;본 게시글은 SAS와 R 코드를 비교하는 글로 &lt;/SPAN&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;STRONG&gt;왜도와 첨도를 구하는 방법&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;을 비교하려고 합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;UL class="se-text-list se-text-list-type-bullet-disc"&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;STRONG&gt;왜도(skewness)&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;분포의 비대칭도를 나타내는 통계량으로 정규분포, T분포와 같이 대칭인 분포는 왜도가 0입니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;왼쪽으로 긴 꼬리를 가지면 왜도는 음수 값을 가지고 오른쪽으로 긴 꼬리를 가지면 왜도는 양수 값을 가지게 됩니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;꼬리 부분쪽에 많은 확률 값이 분포할 수록 왜도의 절대값은 커지게 됩니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="image (3).png" style="width: 773px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/96037iF156958180907303/image-size/large?v=v2&amp;amp;px=999" role="button" title="image (3).png" alt="image (3).png" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV id="SE-ebf9df91-5fe7-444c-a126-3a44fc37de44" class="se-component se-image se-l-default"&gt;
&lt;DIV class="se-component-content se-component-content-fit"&gt;
&lt;DIV class="se-section se-section-image se-l-default se-section-align-justify"&gt;
&lt;DIV class="se-module se-module-text se-caption"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-  lia-align-center"&gt;&lt;SPAN class="se-fs- se-ff-   "&gt;참조: &lt;/SPAN&gt;&lt;SPAN class="se-fs- se-ff-   "&gt;&lt;A class="se-link" href="https://en.wikipedia.org/wiki/Skewness" target="_blank" rel="noopener"&gt;https://en.wikipedia.org/wiki/Skewness&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;DIV id="SE-4d4302b9-74fe-4e17-9327-1eb992c62b4b" class="se-component se-text se-l-default"&gt;
&lt;DIV class="se-component-content"&gt;
&lt;DIV class="se-section se-section-text se-l-default"&gt;
&lt;DIV class="se-module se-module-text"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify  lia-align-center"&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;UL class="se-text-list se-text-list-type-bullet-disc"&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;STRONG&gt;첨도(Kurtosis)&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;정규분포보다 얼마나 뾰족하거나 완만한지의 정도를 나타내는 척도입니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;데이터가 중심에 많이 몰려 있을수록 뾰족한 모양이 되고, 고루고루 퍼지게 되면 넓게 퍼진 모양이 되게 됩니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;데이터의 산포경향을 보여주기도 하며 중심에 얼마다 데이터가 집중적으로 몰려 있는가를 나타냅니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="image (4).png" style="width: 773px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/96038iF02CAABD82CC02DC/image-size/large?v=v2&amp;amp;px=999" role="button" title="image (4).png" alt="image (4).png" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs19 se-ff-system   "&gt;&lt;I&gt;&lt;STRONG&gt;Q. train.csv에서 'SalePrice'컬럼의 왜도와 첨도를 구한 값과&lt;/STRONG&gt;&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs19 se-ff-system   "&gt;&lt;I&gt;&lt;STRONG&gt;SalePrice'컬럼을 스케일링(log1p)로 변환한 이후 왜도와 첨도를 구해 모두 더한 &lt;/STRONG&gt;&lt;/I&gt;&lt;/SPAN&gt;&lt;SPAN class="se-fs-fs19 se-ff-system   "&gt;&lt;I&gt;&lt;STRONG&gt;다음 소수점 2째자리까지 출력&lt;/STRONG&gt;&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system   "&gt;&lt;I&gt;&lt;STRONG&gt;​&lt;/STRONG&gt;&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs19 se-ff-system   "&gt;&lt;I&gt;&lt;STRONG&gt;&amp;gt; House Prices 의 train 데이터를 사용합니다. &lt;/STRONG&gt;&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;H3 class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs19 se-ff-system   "&gt;&lt;SPAN class="se-fs-fs24 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;[R]&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/H3&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;library(e1071)
library(dplyr)

df &amp;lt;- read.csv('/content/sample_data/train.csv')

df %&amp;gt;%
  mutate(
  log_sp = log1p(SalePrice)
  ) %&amp;gt;%
  summarise(
  before_kur=kurtosis(SalePrice,type=2),
  before_ske=skewness(SalePrice,type=2),
  after_kur=kurtosis(log_sp,type=2),
  after_ske=skewness(log_sp,type=2)) %&amp;gt;% 
  sum&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;1. library(dplyr) &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;R은 오픈소스 프로그램으로 많은 유저들이 통계 도구들을 만들어 온라인 상에 무료로 기능을 쓸 수 있게 배포합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;패키지를 사용하기 위해서는 1) 패키지를 설치하고 2) 패키지를 로드 합니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;1) insall.package(dplyr): 처음에 패키지를 설치하기 위해서 사용하는 명령문.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;2) library(dplyr): 패키지를 설치한 후, 패키지를 불러오기 위한 명령문&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;dplyr 이란 패키지를 불러옵니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;dplyr 패키지는 데이터 전처리에 특화된 패키지로 데이터를 처리하는 함수군으로 구성되어 있습니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;%&amp;gt;% 체인 연산자 기호와 함께 데이터 전처리에서 사용됩니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;2. read.csv&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;파일을 불러오는 명령문&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;3. log1p&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;데이터에 로그를 취하게 되면, 정규성을 높일 수 있다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;큰 수를 같은 비율의 작은 수로 바꿔주게 된다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;즉, 로그를 취하게 되면복잡한 계산을 지수로 변하게 되기 때문에 값이 작아지게 됩니다. &lt;/SPAN&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;​&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;또한 로그를 취하게 되면서 왜도와 첨도를 줄여서 데이터 분석시 의미있는 결과를 도출합니다.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="image (5).png" style="width: 431px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/96039i2883C304EADCB34A/image-size/large?v=v2&amp;amp;px=999" role="button" title="image (5).png" alt="image (5).png" /&gt;&lt;/span&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt;위 그림은 로그함수로 0 &amp;lt; x &amp;lt; 1 범위에서 기울기가 매우 가파른 것을 확인할 수 있습니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt;x의 구간은 (0,1)로 매우 짧은 반면, y의 구간은 (-∞,0)으로 매우 큽니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt;0에 가깝게 모여 있는 값들이 x로 입력되면 y값들은 큰 범위로 벌어지게 됩니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;​&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;log변환에 +1 을 해주는 function 이 log1p입니다.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;log안의 x값은 양수만 가능합니다.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;하지만, 0에 가까운 양수의 경우 음의 무한대로 가까워지게 됩니다. &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;x값이 매우 작은 값으로 들어가게 되면 -Inf 로 결과가 출력됩니다.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;이를 방지하기 위해 1을 더함으로써 0보다 큰 양수 값을 가지게 됩니다.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;​&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;​&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;4. &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN class="se-fs- se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;Kurtosis / Skewness &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt;kurtosis와 skewness는 e1071 library 안에 있는 왜도와 첨도를 구하는 function입니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt;type은 2를 사용해서 정규분포에서 비편향적입니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs24 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;[SAS]&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;/* 1. */
proc import datafile='/home/u45061472/train.csv'
            out=mydata
            dbms=csv
            replace;
run;

/* 2. */
proc means data=mydata n mean std skewness kurtosis;
    var Log_SalePrice;
run;

/*3.*/
data mydata;
    set mydata;
    Log_SalePrice = log1p(SalePrice);
run;


/* 4. */
proc means data=mydata n mean std skewness kurtosis;
    var Log_SalePrice;
run;

/*5./
data stats_sum;
    set stats;
    Sum_Skewness_Kurtosis = Skewness + Kurtosis;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;OL class="se-text-list se-text-list-type-decimal"&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;PROC IMPORT&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;/OL&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system   "&gt;&lt;I&gt;&lt;STRONG&gt;​&lt;/STRONG&gt;&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;외부 데이터를 불러오는 명령문입니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;UL class="se-text-list se-text-list-type-bullet-disc"&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;DATA = : 파일 위치 또는 파일명을 지정.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;DBMS = : 파일 형식을 설정.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;OUT = : 원본 데이터는 그대로 유지되고, 원하는 데이터 형식의 데이터를 생성합니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;REPLACE : 이미 데이터가 존재하면 데이터 세트를 덮어쓰는 것 입니다. 코드를 실행할 때마다 데이터 세트의 이름을 변경하거나 삭제할 필요가 없어서 실행 단계를 단순화 할 수 있습니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;​&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;​&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;2. &amp;amp; 4. PROC MEAN&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;통계적 요약을 수행하는 명령문입니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;UL class="se-text-list se-text-list-type-bullet-disc"&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;DATA = : 작업할 데이터 셋 지정&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;var: 분석할 변수를 지정.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;N: 결측값이 아닌 데이터 갯수&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;3. Data mydata ~&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;새로운 데이터셋인 mydata를 정의합니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt;set mydata; : mydata 셋을 순차적으로 읽음&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt;Log_SalePrice = log1p(SalePrice); : mydata셋 안에 있는 saleprice 칼럼에 log값을 취한 후, 1을 더합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt;log1p를 사용하는 이유는 위 R코드에서 확인해주시면 됩니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;​&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;5. Data stats_sum ~&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt;로그 변환한 왜도와 첨도와 기존 왜도와 첨도 값을 합한 새로운 stats_sum 데이터셋을 정의합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;/DIV&gt;</description>
      <pubDate>Tue, 30 Apr 2024 10:51:01 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Tech-Tip/SAS-R-%EC%99%9C%EB%8F%84%EC%99%80-%EC%B2%A8%EB%8F%84/ta-p/926433</guid>
      <dc:creator>AmeeKang</dc:creator>
      <dc:date>2024-04-30T10:51:01Z</dc:date>
    </item>
    <item>
      <title>Discover Your Data with SAS Information Catalog APIs from Python – Upload to CAS</title>
      <link>https://communities.sas.com/t5/SAS-Communities-Library/Discover-Your-Data-with-SAS-Information-Catalog-APIs-from-Python/ta-p/926412</link>
      <description>&lt;P&gt;Discover Your Data with SAS Information Catalog APIs from Python – Upload to CAS&lt;/P&gt;</description>
      <pubDate>Tue, 30 Apr 2024 06:37:28 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Communities-Library/Discover-Your-Data-with-SAS-Information-Catalog-APIs-from-Python/ta-p/926412</guid>
      <dc:creator>Bogdan_Teleuca</dc:creator>
      <dc:date>2024-04-30T06:37:28Z</dc:date>
    </item>
    <item>
      <title>Unleashing Potential – SAS Hackathon</title>
      <link>https://communities.sas.com/t5/SAS-Communities-Library/Unleashing-Potential-SAS-Hackathon/ta-p/925469</link>
      <description>&lt;DIV class="lia-message-template-content-zone"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="linkedIn-banner-1584x396.png" style="width: 864px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/95793iD8AEFE68D5DE6B55/image-dimensions/864x216?v=v2" width="864" height="216" role="button" title="linkedIn-banner-1584x396.png" alt="linkedIn-banner-1584x396.png" /&gt;&lt;/span&gt;
&lt;P&gt;In my last post I spoke about the importance of learning through gamification. Learning in the classroom gets you started. Applying what you’ve learnt through events like hackathons, brings theory to life. And the 2 learning methods connect!&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;A great hackathon &lt;STRONG&gt;aligns with the learning objectives&lt;/STRONG&gt;. It provides students with the opportunity to apply theoretical knowledge in practical, real-world contexts. The themes, challenges, and activities complement the curriculum and enhance students' understanding of key concepts.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;A successful hackathon fosters &lt;STRONG&gt;active student engagement and participation&lt;/STRONG&gt;. It sparks students' curiosity, creativity, and passion for problem-solving. The format, structure, and activities motivate students to collaborate, explore new ideas, and push their boundaries.&lt;/P&gt;
&lt;P&gt;Hackathons also offer valuable &lt;STRONG&gt;hands-on learning experiences&lt;/STRONG&gt; that can't be replicated in traditional classroom settings. A great hackathon provides students with access to real-world data, tools, and resources, allowing them to gain practical skills and insights into industry practices.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;And hackathons provide opportunities for &lt;STRONG&gt;interdisciplinary collaboration&lt;/STRONG&gt;, bringing together students from different academic backgrounds, faculties, and skill sets. A great hackathon encourages cross-disciplinary teamwork, communication, and knowledge sharing.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Professors, industry mentors and subject matter experts play a crucial role in providing &lt;STRONG&gt;mentorship, guidance, and support&lt;/STRONG&gt; to students. They offer advice, answer questions, and facilitate discussions to help students overcome challenges. A great hackathon facilitates networking, mentorship, and career development opportunities, helping students build connections and explore future career paths.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;And a great hackathon incorporates opportunities for &lt;STRONG&gt;feedback and reflection&lt;/STRONG&gt;, allowing students to assess their progress, identify areas for improvement, and celebrate their achievements. Post-event debrief sessions, peer reviews, and expert feedback help students consolidate their learning and prepare for future work.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Lastly a great hackathon embraces &lt;STRONG&gt;inclusivity and diversity&lt;/STRONG&gt;, welcoming students from all backgrounds, identities, and experiences. It creates a supportive and inclusive environment where every participant feels valued, respected, and empowered to contribute their unique perspectives and talents.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;SAS Hackathon&lt;/STRONG&gt; brings industry and academia together. The event provides a platform for participants to showcase their AI and data analytics skills, learn from industry experts, and collaborate with peers to tackle real-world challenges using SAS Viya. It's an exciting opportunity for students to collaborate with professionals to apply their knowledge and creativity. SAS Hackathon participation also looks impressive on a student resume. It demonstrates initiative, teamwork, and the ability to solve complex problems under pressure, which are qualities that employers value. And student feedback share how SAS Hackathon is an intense, experience that push students out of their comfort zones, to learn how to deal with ambiguity, failure, and time constraints. All of which are essential skills for personal and professional growth.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://www.sas.com/sas/events/hackathon.html" target="_blank"&gt;SAS Hackathon&lt;/A&gt; registration opens on the 30&lt;SUP&gt;th&lt;/SUP&gt; May and the competition takes place between 16&lt;SUP&gt;th&lt;/SUP&gt; September - 11&lt;SUP&gt;th&lt;/SUP&gt; October. So now is a great time for professors and students alike to incorporate gamification into the Faculty’s program and use SAS Hackathon as a global stage where students can shine.&lt;/P&gt;
&lt;/DIV&gt;</description>
      <pubDate>Tue, 30 Apr 2024 02:50:00 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Communities-Library/Unleashing-Potential-SAS-Hackathon/ta-p/925469</guid>
      <dc:creator>IanEdwards</dc:creator>
      <dc:date>2024-04-30T02:50:00Z</dc:date>
    </item>
    <item>
      <title>ANYALPHA and ANYDIGIT: Surprisingly useful SAS functions</title>
      <link>https://communities.sas.com/t5/SAS-Communities-Library/ANYALPHA-and-ANYDIGIT-Surprisingly-useful-SAS-functions/ta-p/925548</link>
      <description>&lt;P&gt;Learn how to use ANYDIGIT and ANYALPHA to extract measurement values from text data&lt;/P&gt;</description>
      <pubDate>Mon, 29 Apr 2024 19:40:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Communities-Library/ANYALPHA-and-ANYDIGIT-Surprisingly-useful-SAS-functions/ta-p/925548</guid>
      <dc:creator>PiaRønnevik</dc:creator>
      <dc:date>2024-04-29T19:40:20Z</dc:date>
    </item>
    <item>
      <title>kubectl for the SAS administrator</title>
      <link>https://communities.sas.com/t5/SAS-Communities-Library/kubectl-for-the-SAS-administrator/ta-p/926295</link>
      <description>&lt;P&gt;kubectl for the SAS administrator&lt;/P&gt;</description>
      <pubDate>Mon, 29 Apr 2024 14:11:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Communities-Library/kubectl-for-the-SAS-administrator/ta-p/926295</guid>
      <dc:creator>BrunoMueller</dc:creator>
      <dc:date>2024-04-29T14:11:09Z</dc:date>
    </item>
    <item>
      <title>[SAS/ R ] 이상치 파악 - IQR</title>
      <link>https://communities.sas.com/t5/SAS-Tech-Tip/SAS-R-%EC%9D%B4%EC%83%81%EC%B9%98-%ED%8C%8C%EC%95%85-IQR/ta-p/926282</link>
      <description>&lt;DIV class="lia-message-template-content-zone"&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;STRONG&gt;​&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;STRONG&gt;Q. Titanic 데이터 중 Fare(요금) 변수의 이상치를 확인하려고 합니다.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;STRONG&gt;이상치의 기준은 IQR을 기준으로 Q1 - 1.5*IQR 보다 작거나 Q3 + 1.5*IQR 보다 클 경우에 이상치라고 판단합니다.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;STRONG&gt;Fare 요금의 이상치 중 성별이 여자인 데이터를 구합니다.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify  lia-align-center"&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="image (2).png" style="width: 479px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/95990iDCF38A77C6BC3726/image-size/large?v=v2&amp;amp;px=999" role="button" title="image (2).png" alt="image (2).png" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify  lia-align-center"&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;SPAN class="se-fs- se-ff-   "&gt;참조: &lt;/SPAN&gt;&lt;SPAN class="se-fs- se-ff-   "&gt;&lt;A class="se-link" href="https://docs.oracle.com/cloud/help/ko/pbcs_common/PFUSU/insights_metrics_IQR.htm#PFUSU-GUID-CF37CAEA-730B-4346-801E-64612719FF6B" target="_blank" rel="noopener"&gt;https://docs.oracle.com/cloud/help/ko/pbcs_common/PFUSU/insights_metrics_IQR.htm#PFUSU-GUID-CF37CAEA-730B-4346-801E-64612719FF6B&lt;/A&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV id="SE-6d34ac08-a418-4d9b-88f7-036c8f436d4a" class="se-component se-text se-l-default"&gt;
&lt;DIV class="se-component-content"&gt;
&lt;DIV class="se-section se-section-text se-l-default"&gt;
&lt;DIV class="se-module se-module-text"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;타이타닉 데이터의 칼럼에 관한 설명입니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;Pclass - 티켓 클래스. (1 = 1st, 2 = 2nd, 3 = 3rd)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;Name - 탑승객 성명&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;Sex - 성별&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;Age - 나이(세)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;SibSp - 함께 탑승한 형제자매, 배우자 수 총합&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;Parch - 함께 탑승한 부모, 자녀 수 총합&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;Embarked - 탑승 항구&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;Fare - 탑승 요금&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;Ticket - 티켓 넘버&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;Cabin - 객실 넘버&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;H3 class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs24 se-ff-system   "&gt;&lt;STRONG&gt;[R]&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/H3&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;DIV id="SE-916e92f8-eb74-4c23-8ecd-35c833a21f1b" class="se-component se-code se-l-code_stripe __se-component"&gt;
&lt;DIV class="se-component-content"&gt;
&lt;DIV class="se-section se-section-code se-l-code_stripe"&gt;
&lt;DIV class="se-module se-module-code se-fs-fs13"&gt;
&lt;DIV class="se-code-source"&gt;
&lt;DIV class="__se_code_view language-javascript"&gt;
&lt;DIV class="autosourcing-stub-extra"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="autosourcing-stub-extra"&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;df &amp;lt;- read.csv('/content/titanic.csv') #1
library(dplyr) #2.

df %&amp;gt;% 
  mutate(Q1=fivenum(Fare)[2],Q3=fivenum(Fare)[4],IQR=Q3-Q1) %&amp;gt;% 
  filter((Fare&amp;lt;Q1-1.5*IQR | Q3+1.5*IQR&amp;gt;Fare) &amp;amp; Sex=='female') %&amp;gt;% 
  nrow&lt;/CODE&gt;&lt;/PRE&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;STRONG&gt;1. read.csv&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;파일을 불러오는 명령문&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;STRONG&gt;2. library(dplyr) &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;R은 오픈소스 프로그램으로 많은 유저들이 통계 도구들을 만들어 온라인 상에 무료로 기능을 쓸 수 있게 배포합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;패키지를 사용하기 위해서는 1) 패키지를 설치하고 2) 패키지를 로드 합니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;1) insall.package(dplyr): 처음에 패키지를 설치하기 위해서 사용하는 명령문.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;2) library(dplyr): 패키지를 설치한 후, 패키지를 불러오기 위한 명령문&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;dplyr 이란 패키지를 불러옵니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;dplyr 패키지는 데이터 전처리에 특화된 패키지로 데이터를 처리하는 함수군으로 구성되어 있습니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;%&amp;gt;% 체인 연산자 기호와 함께 데이터 전처리에서 사용됩니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;STRONG&gt;3. mutate&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;여러 파생변수를 만들 수 있는 명령문&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;mutate (dataframe, 새로운 column명 = 기존 column을 조합한 수식)&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;mutate 함수는 위와 같은 Syntax를 사용하며 변수명만 입력하여 새로운 변수를 만들 수 있어 코드가 간결해진다는 장점이 있습니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;STRONG&gt;4. fivenum&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;'최소값, 1사분위(Q1), 중위수, 3사분위, 최대값'을 추출합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;비슷한 function으로 summary 함수가 있지만, summary 의 경우에는 평균값도 같이 추출합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;STRONG&gt;5. filter&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;조건에 맞는 데이터만 필터링 해서 결과값을 추출합니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;dplyr 패키지 안에 있는 함수로 조건절에 해당합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;H3 class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs24 se-ff-system   "&gt;&lt;STRONG&gt;[SAS]&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/H3&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;/* 1. */
proc import datafile="titanic.csv" out=titanic
    dbms=csv replace;
    getnames=yes;
run;

/* 2. */
proc means data=titanic noprint;
    var fare;
    output out=stats
        q1=q1
        q3=q3;
run;

/* 3. */
data outliers;
    set stats;
    lower_limit = q1 - 1.5*(q3-q1);
    upper_limit = q3 + 1.5*(q3-q1);
    if fare &amp;lt; lower_limit or fare &amp;gt; upper_limit;
run;

/* 4. */
proc freq data=outliers;
    where sex = 'female';
    tables sex / nocum;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;STRONG&gt;1. PROC IMPORT&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;외부 데이터를 불러오는 명령문입니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;DATAFILE = : 파일 위치 또는 파일명을 지정.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;DBMS = : 파일 형식을 설정.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;OUT = : 원본 데이터는 그대로 유지되고, 원하는 데이터 형식의 데이터를 생성합니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;REPLACE : 이미 데이터가 존재하면 데이터 세트를 덮어쓰는 것 입니다. 코드를 실행할 때마다 데이터 세트의 이름을 변경하거나 삭제할 필요가 없어서 실행 단계를 단순화 할 수 있습니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;getnames: 첫번째 행에 변수 명이 포함되어 있는 경우 사용&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;STRONG&gt;2. PROC MEAN&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;통계적 요약을 수행하는 명령문입니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;DATA = : 작업할 데이터 셋 지정&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;Noprint: 결과를 출력하지 않는 옵션입니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;var: 분석할 변수를 지정.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;OUTPUT OUT = stats : stats라는 dataset을 생성.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;q1 q3 : 각각 Q1과 Q3를 저장할 변수 이름을 설정한 것 입니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;즉, fare 변수의 사분위수 Q1, Q3가 계산되고, 그 결과가 stats이라는 새로운 데이터셋에 저장됩니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;STRONG&gt;3. Data Outliers ~&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;STRONG&gt;​&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;새로운 데이터셋인 outliers를 정의합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;set titanic: titanic 데이터셋을 순차적으로 읽음.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;lower_limit = : 이상치의 하한값을 계산 및 지정&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;upper_limit = : 이상치의 상한값 계산 및 지정&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt; if fare &amp;lt; lower_limit or fare &amp;gt; upper_limit :lower_limit보다 작거나 upprt_limit보다 크면 이상치를 설정해서 outliers 데이터셋에 포함시킵니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;STRONG&gt;4. Proc Freq &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;빈도 분석을 위한 명령문으로 outliers 데이터셋을 분석합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;where sex = 'female' : 조건절로 sex 변수가 female 인 행들만 선택합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;table sex / nocum : sex 변수를 기준으로 빈도표를 작성합니다. nocum 옵션은 누적 백분률을 출력하지 않도록 설정하는 것 입니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset  "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;CODE class=" language-sas"&gt;&lt;/CODE&gt;&lt;/P&gt;
&lt;/DIV&gt;</description>
      <pubDate>Mon, 29 Apr 2024 12:07:44 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Tech-Tip/SAS-R-%EC%9D%B4%EC%83%81%EC%B9%98-%ED%8C%8C%EC%95%85-IQR/ta-p/926282</guid>
      <dc:creator>AmeeKang</dc:creator>
      <dc:date>2024-04-29T12:07:44Z</dc:date>
    </item>
    <item>
      <title>[SAS/R] 결측치 처리 후, 대체</title>
      <link>https://communities.sas.com/t5/SAS-Tech-Tip/SAS-R-%EA%B2%B0%EC%B8%A1%EC%B9%98-%EC%B2%98%EB%A6%AC-%ED%9B%84-%EB%8C%80%EC%B2%B4/ta-p/926279</link>
      <description>&lt;DIV class="lia-message-template-content-zone"&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;본 게시글은 SAS와 R을 비교하는 글로 &lt;/SPAN&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;STRONG&gt;결측치를 처리하는 방법을 비교&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;해보고자 합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs16 se-ff-system  se-style-unset "&gt;사용 데이터는 basic.csv 데이터 입니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="image.png" style="width: 999px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/95989iAA4BAFC51F9A0796/image-size/large?v=v2&amp;amp;px=999" role="button" title="image.png" alt="image.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs16 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;Q. basic 데이터 중 F1칼럼에 결측치가 있으면 F1칼럼의 Median 값으로 대체하고, city 칼럼별로 F1칼럼의 평균값을 구한다.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system   "&gt;&lt;I&gt;​&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H3 class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs24 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;[R]&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/H3&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;library(dplyr)

df=read.csv('../input/bigdatacertificationkr/basic1.csv')

apply(is.na(df),2,sum) #1

df1=df %&amp;gt;% 
group_by(city) %&amp;gt;%  #2
mutate(  #3
pre_f1=ifelse(is.na(f1),median(f1,na.rm=T),f1))   #4

mean(df1$pre_f1)&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system   "&gt;&lt;I&gt;​&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;1. Apply&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system  se-style-unset "&gt;행(Row) 또는 열(Column) 단위의 연산을 쉽게 할 수 있도록 지원하는 함수. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system   "&gt;&lt;I&gt;​&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system   "&gt;&lt;I&gt; * 행(1) 단위로 mean 연산 :&amp;nbsp;iris 데이터를 행(1) 단위로 평균값을 구하는 코드입니다.&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;apply(iris, 1, mean)&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;I&gt;* 열(column) 단위로 mean 연산&lt;/I&gt;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;apply(iris, 2, mean)&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV id="SE-3ed04887-f143-42e3-bb4b-2b823cc0223a" class="se-component se-text se-l-default"&gt;
&lt;DIV class="se-component-content"&gt;
&lt;DIV class="se-section se-section-text se-l-default"&gt;
&lt;DIV class="se-module se-module-text"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system   "&gt;&lt;I&gt;​&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;2. Group by&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system  se-style-unset "&gt;데이터를 요약하는 기능으로, Excel의 pivot과 기능이 유사합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system  se-style-unset "&gt;데이터를 그룹 별로 묶는 함수로, 데이터에서 특정 컬럼을 지정해서 그룹 별로 묶을 수 있습니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system   "&gt;&lt;I&gt;​&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system   "&gt;&lt;I&gt;​&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;3. Mutate&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;mutate (dataframe, 새로운 column명 = 기존 column을 조합한 수식)&lt;/CODE&gt;&lt;/PRE&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;DIV id="SE-3eacc186-8c27-4c9c-9763-b4bdea2deee5" class="se-component se-code se-l-code_stripe __se-component"&gt;
&lt;DIV class="se-component-content"&gt;
&lt;DIV class="se-section se-section-code se-l-code_stripe"&gt;
&lt;DIV class="se-module se-module-code se-fs-fs13"&gt;
&lt;DIV class="se-code-source"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;DIV id="SE-17164c7f-6d98-4b12-ba40-0a103ef84b9e" class="se-component se-text se-l-default"&gt;
&lt;DIV class="se-component-content"&gt;
&lt;DIV class="se-section se-section-text se-l-default"&gt;
&lt;DIV class="se-module se-module-text"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;여러 파생변수를 만들 수 있는 명령문으로, mutate 함수는 위와 같은 Syntax를 사용하며 변수명만 입력하여 새로운 변수를 만들 수 있어 코드가 간결해진다는 장점이 있습니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;4. Ifelse&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV id="SE-9a138e6a-55c2-4085-bc77-ff4726bd7417" class="se-component se-code se-l-code_stripe __se-component"&gt;
&lt;DIV class="se-component-content"&gt;
&lt;DIV class="se-section se-section-code se-l-code_stripe"&gt;
&lt;DIV class="se-module se-module-code se-fs-fs13"&gt;
&lt;DIV class="se-code-source"&gt;
&lt;DIV class="__se_code_view language-javascript"&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;ifelse(조건, O, X)&lt;/CODE&gt;&lt;/PRE&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;DIV id="SE-23dca21c-c160-4dda-9953-7cb1a72881df" class="se-component se-text se-l-default"&gt;
&lt;DIV class="se-component-content"&gt;
&lt;DIV class="se-section se-section-text se-l-default"&gt;
&lt;DIV class="se-module se-module-text"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;조건을 만족하면 O를, 조건을 만족하지 않으면 X를 출력하는 명령문입니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;이를 응용하여, 변수X가 결측값을 가질 경우 결측값을 값 K(예 : 0)로 대체하고 싶다면 그 구조는 다음과 같습니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;DIV id="SE-c2dc8521-c43f-4479-83e0-be6209e127e1" class="se-component se-code se-l-code_stripe __se-component"&gt;
&lt;DIV class="se-component-content"&gt;
&lt;DIV class="se-section se-section-code se-l-code_stripe"&gt;
&lt;DIV class="se-module se-module-code se-fs-fs13"&gt;
&lt;DIV class="se-code-source"&gt;
&lt;DIV class="__se_code_view language-javascript"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;DIV id="SE-b3911b74-6cd8-4859-be89-0141f619d054" class="se-component se-text se-l-default"&gt;
&lt;DIV class="se-component-content"&gt;
&lt;DIV class="se-section se-section-text se-l-default"&gt;
&lt;DIV class="se-module se-module-text"&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;ifelse(is.na(변수X), K, 변수X)
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs13 se-ff-system   "&gt;&lt;I&gt;위 코드는 변수x가 Na 값이면, K값을 출력하고, Na가 아니면 변수X를 추출하는 코드입니다.&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;STRONG&gt;[SAS]&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;/* 1. */
proc import datafile="/home/u45061472/basic1.csv" out=basic
    dbms=csv replace;
    getnames=yes;
run;
/* 2. */
proc means data=basic noprint;
    var f1;
    output out=median_f1 median=median_f1;
run;
/*3.*/
data basic;
    if _n_ eq 1 then set median_f1;
    if missing(f1) then f1 = median_f1;
    drop median_f1;
run;

proc means data=basic mean;
    var f1;
run;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;​&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;OL class="se-text-list se-text-list-type-decimal"&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;PROC IMPORT&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;/OL&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system   "&gt;&lt;I&gt;​&lt;/I&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;외부 데이터를 불러오는 명령문입니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;UL class="se-text-list se-text-list-type-bullet-disc"&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;DATAFILE = : 파일 위치 또는 파일명을 지정.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;DBMS = : 파일 형식을 설정.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;OUT = : 원본 데이터는 그대로 유지되고, 원하는 데이터 형식의 데이터를 생성합니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;REPLACE : 이미 데이터가 존재하면 데이터 세트를 덮어쓰는 것 입니다. 코드를 실행할 때마다 데이터 세트의 이름을 변경하거나 삭제할 필요가 없어서 실행 단계를 단순화 할 수 있습니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;getnames: 첫번째 행에 변수 명이 포함되어 있는 경우 사용&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;2. PROC MEAN&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;통계적 요약을 수행하는 명령문입니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;UL class="se-text-list se-text-list-type-bullet-disc"&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;DATA = : 작업할 데이터 셋 지정&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;Noprint: 결과를 출력하지 않는 옵션입니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;var: 분석할 변수를 지정.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;OUTPUT OUT = median_f1 : median_f1이라는 dataset을 생성.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;median = median_f1: f1변수의 중앙값을 계산하고 그 결과를 새로운 데이터셋인 median_f1에 저장. &lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs-fs15 se-ff-system  se-style-unset "&gt;&lt;STRONG&gt;3. Data basic ~ &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt;​&lt;/SPAN&gt;&lt;/P&gt;
&lt;UL class="se-text-list se-text-list-type-bullet-disc"&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt;_N_ : 데이터 스텝에서 데이터 셋을 읽거나 수정하는 작업으로 현재 데이터 스텝의 번호를 의미합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt;데이터 스텝이 실행할 때마다 1씩 증가합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt; if _n_ eq 1 then set median_f1; : 데이터의 첫번째 해인 경우에는 median_f1값을 불러와서 데이터 값을 변수 f1에 대입합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt; if missing(f1) then f1 = median_f1; : f1변수 값이 결측치일 경우에는 medain_f1값으로 대체합니다. &lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="se-text-list-item"&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&lt;SPAN class="se-fs- se-ff-system se-weight-unset se-style-unset "&gt;drop median_f1: median_f1변수는 중앙값을 저장하기 위해 사용되었고, 삭제합니다.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="se-text-paragraph se-text-paragraph-align-justify "&gt;&amp;nbsp;&lt;/P&gt;
&lt;/DIV&gt;</description>
      <pubDate>Mon, 29 Apr 2024 12:04:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Tech-Tip/SAS-R-%EA%B2%B0%EC%B8%A1%EC%B9%98-%EC%B2%98%EB%A6%AC-%ED%9B%84-%EB%8C%80%EC%B2%B4/ta-p/926279</guid>
      <dc:creator>AmeeKang</dc:creator>
      <dc:date>2024-04-29T12:04:07Z</dc:date>
    </item>
    <item>
      <title>Advanced configuration of a Shock in SAS Risk Factor Manager</title>
      <link>https://communities.sas.com/t5/SAS-Communities-Library/Advanced-configuration-of-a-Shock-in-SAS-Risk-Factor-Manager/ta-p/925887</link>
      <description>&lt;P&gt;Advanced configuration of a Shock in SAS Risk Factor Manager&lt;/P&gt;</description>
      <pubDate>Thu, 25 Apr 2024 20:33:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Communities-Library/Advanced-configuration-of-a-Shock-in-SAS-Risk-Factor-Manager/ta-p/925887</guid>
      <dc:creator>MihaiViju</dc:creator>
      <dc:date>2024-04-25T20:33:07Z</dc:date>
    </item>
    <item>
      <title>Wavelet Analysis using SAS/IML: Thresholding the Detail Coefficients to Remove High-Frequency Noise</title>
      <link>https://communities.sas.com/t5/SAS-Communities-Library/Wavelet-Analysis-using-SAS-IML-Thresholding-the-Detail/ta-p/925884</link>
      <description>&lt;P&gt;Recently in the SAS Community Library: SAS'&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/191988"&gt;@AriZitin&lt;/a&gt;&amp;nbsp;shows you&amp;nbsp;&lt;SPAN&gt;how wavelets can be used to remove unwanted high-frequency noise from digital signals.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 26 Apr 2024 15:18:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Communities-Library/Wavelet-Analysis-using-SAS-IML-Thresholding-the-Detail/ta-p/925884</guid>
      <dc:creator>AriZitin</dc:creator>
      <dc:date>2024-04-26T15:18:39Z</dc:date>
    </item>
    <item>
      <title>Don’t Listen to Ron White. Cluster Profiling is Right!</title>
      <link>https://communities.sas.com/t5/SAS-Communities-Library/Don-t-Listen-to-Ron-White-Cluster-Profiling-is-Right/ta-p/925875</link>
      <description>&lt;P&gt;Don’t Listen to Ron White. Cluster Profiling is Right!&lt;/P&gt;</description>
      <pubDate>Thu, 25 Apr 2024 19:56:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Communities-Library/Don-t-Listen-to-Ron-White-Cluster-Profiling-is-Right/ta-p/925875</guid>
      <dc:creator>MarcHuber</dc:creator>
      <dc:date>2024-04-25T19:56:48Z</dc:date>
    </item>
    <item>
      <title>SAS Viya at SAS Innovate - What’s New in Data &amp; AI</title>
      <link>https://communities.sas.com/t5/SAS-Viya-Release-Updates/SAS-Viya-at-SAS-Innovate-What-s-New-in-Data-amp-AI/ta-p/925669</link>
      <description>&lt;DIV class="lia-message-template-content-zone"&gt;
&lt;P&gt;&lt;A href="https://www.sas.com/gms/redirect.jsp?detail=PLN28143_766589651" target="_self"&gt;&lt;SPAN&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="maxresdefault" style="width: 999px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/95843i9E8A281C823FA50C/image-size/large?v=v2&amp;amp;px=999" role="button" title="maxresdefault" alt="maxresdefault" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Want to know what’s new in SAS Viya? In this SAS Viya Release Highlights Show, we’re packing our bags and heading to Las Vegas to showcase the latest SAS Viya announcements. We’ll be covering what’s new when it comes to SAS Viya Workbench, generative AI, copilots and even dive into topics like quantum computing. You’ll hear from SAS experts about how SAS is investing in these exciting technology areas.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/DIV&gt;</description>
      <pubDate>Wed, 24 Apr 2024 21:22:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Viya-Release-Updates/SAS-Viya-at-SAS-Innovate-What-s-New-in-Data-amp-AI/ta-p/925669</guid>
      <dc:creator>thiago</dc:creator>
      <dc:date>2024-04-24T21:22:12Z</dc:date>
    </item>
    <item>
      <title>Maximize Coding and Data Freedom with SAS, Python and Databricks</title>
      <link>https://communities.sas.com/t5/SAS-Communities-Library/Maximize-Coding-and-Data-Freedom-with-SAS-Python-and-Databricks/ta-p/925503</link>
      <description>&lt;P&gt;Freedom of choice is now more important than ever when you want to get the most out of your data and AI specialists. Boasting compatibility with 80+ data sources, including widely adopted open data standards and formats such as Parquet and ORC, the possibilities for data access are virtually limitless with SAS Viya. Check out this blog to look into how this freedom also extends to coding language with SAS Viya - in particular Python.&lt;/P&gt;</description>
      <pubDate>Wed, 24 Apr 2024 08:49:18 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Communities-Library/Maximize-Coding-and-Data-Freedom-with-SAS-Python-and-Databricks/ta-p/925503</guid>
      <dc:creator>larsarne</dc:creator>
      <dc:date>2024-04-24T08:49:18Z</dc:date>
    </item>
    <item>
      <title>Why Do I Need SAS Intelligent Decisioning and SAS Model Manager to Achieve Analytics Success?</title>
      <link>https://communities.sas.com/t5/Ask-the-Expert/Why-Do-I-Need-SAS-Intelligent-Decisioning-and-SAS-Model-Manager/ta-p/925389</link>
      <description>&lt;DIV class="lia-message-template-content-zone"&gt;
&lt;P&gt;&lt;STRONG&gt;Watch this Ask the Expert session to learn how &lt;SPAN&gt;the integration between these SAS solutions helps MLOps engineers, data scientists and business users improve analytics success by working together&lt;/SPAN&gt;.&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://www.sas.com/gms/redirect.jsp?detail=PLN24687_1605429396" target="_blank" rel="nofollow noopener noreferrer noreferrer noreferrer noreferrer"&gt;&lt;SPAN class="cta-button-article"&gt;Watch the Webinar&lt;/SPAN&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;You will learn about:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;How SAS® Viya® supports enterprise team collaboration to efficiently build AI and analytics systems.&lt;/LI&gt;
&lt;LI&gt;Core functionality of SAS Model Manager for MLOps engineers, including registration, testing, governance, monitoring and integration with solutions such as SAS Intelligent Decisioning.&lt;/LI&gt;
&lt;LI&gt;Core functionality of SAS Intelligent Decisioning for decision analysts, including rule building, ML/AL implementation, code support, orchestration and deployment.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The questions from the Q&amp;amp;A segment held at the end of the webinar are listed below and the slides from the webinar are attached.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Q&amp;amp;A&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;After model decay is detected, what are the next steps?&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;We didn't dive too deep into model decay in this example, but when we develop our machine learning models, they are just representations of a pattern that they detect in the world around us at a specific time point. Our world is ever changing, new things appear all the time, things phase out. So, when our models are trained to work with a specific pattern at a single point in time, it becomes less effective at prediction when that pattern is no longer useful. This is a process called model decay.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Within our SAS model management tool, we have capabilities for setting thresholds for sending tasks or notifications whenever your model decay doesn't meet that threshold, so that users can come in and decide what's next. Do they retrain their models in SAS Model Studio? Do they select a challenger model that looks like it's still performing as well as the champion or better? We do support performance monitoring for multiple models so you can share those challenger models side-by-side those champions. You can quickly see it's time to replace my production model with a challenger or decide to retire the project to build new models. There are a few different options that are available, but we do help with letting individuals know when it is time to address model decay. From there, we can replace production models when we go to deploy; there's a toggle to replace the model or replacing the model with the same name. Or we can just let Crystal know that it's time to swap out that model, as you've seen in the demonstration. We can even very quickly share our models. There's a share button, so we can even share it over teams if I want to speed things along.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;What else can I do to ensure my decision flows leverage Responsible and Trustworthy AI best practices?&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;There are a few things that we can do to better make sure that our decisions fall into that responsible and trustworthy AI category. First, when we are using models within our decisions, we want to make sure that we're working with the data scientists or whoever is developing and maintaining those models. Because a large part of how our decisions depend on the outputs those models. So, we need to make sure that our models are up to date. If there needs to be retraining, retrain the models before our models get stale. In addition, we also want our decisions to be transparent and be able to explain how a decision was made. With SAS intelligent decisioning, there's a few ways we can do this. When we publish decisions, navigate to the Deployments tab to manage the different deployed decisions that we have. We can understand where they've been deployed to, who's deployed them, and the date of publishing. Also, with this, we can get a better understanding of how the decision is running and what it is using to make decisions by easily generating a report that helps us create better transparent decisions.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;We can also track decisions with decision path analysis and rule-fired analysis. We can also track decisions with decision path analysis and rule-fired analysis and the output decision variables. With this data we can do analysis to better understand how decisions are made and ensure&amp;nbsp; that we are making responsible decisions.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;While developing category models and churn models, do you actually code or is it done by SAS Viya itself?&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;What's nice about SAS Viya is that it's almost like a choose your own adventure when it comes to how you develop your models. It can be yes code, no code, low code, or somewhere in between. For this particular example, these models that we use were developed using a tool called SAS Model Studio, which is a GUI (Graphical User Interface) based approach where you don't have to do any coding yourself. You can drag and drop nodes into a pipeline, you can use automated machine learning to develop that pipeline for you. You don't actually have to code at all to build out these models we used today. But that doesn't mean you can't code. Users can also code in SAS and Python or R to develop their models. We have a few different options for those users. It is nice and flexible so you can start to bring together skill sets across your organization, whether they can code and enjoy it and just want to stick with that method, or if they prefer to iterate very quickly using a drag and drop tool. There is a variety of different options for how these models can be developed.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;How can I learn more?&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Sophia: &lt;SPAN&gt;Besides joining us at SAS Innovate, both Model Manager and Intelligent Decisioning are very active on SAS communities. I post under the SAS Model Manager label whenever we have new features, and many of our experts in the community post interesting use cases they come across, and interesting problems they've solved. So, it's definitely worthwhile to subscribe to the SAS Model Manager label on SAS Communities.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;Crystal: SAS Communities is always a good one for Model Manager or SAS Intelligent Decisioning. We have some blogs on the sas.com page and then also in SAS Communities. I also suggest taking a look at the previous because we have a lot of good tutorials or how to videos that show you how we move throughout either SAS Model Manager and SAS Intelligent Decisioning. The previous webinars can be especially helpful if you are new to either of these solutions.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;SAS Model Manager Communities Link: &lt;A href="https://communities.sas.com/t5/SAS-Communities-Library/tkb-p/library/label-name/sas%20model%20manager" target="_blank"&gt;SAS Communities: SAS Model Manager&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;SAS Intelligent Decisioning Communities Link: &lt;A href="https://communities.sas.com/t5/Decisioning/bd-p/decisioning" target="_blank"&gt;SAS Communities: Decisioning&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;SAS Ask the Expert Webinars: &lt;A href="https://communities.sas.com/t5/Ask-the-Expert/tkb-p/askexpert/label-name/customer%20intelligence" target="_blank"&gt;Ask the Expert - SAS Support Communities&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Did you use logistic regression to develop the model?&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;In this example, the category model is a rules-based text model, and the churn model is a gradient boosting model, but logistic regression models and many other machine learning models are supported.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Recommended Resources&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;A href="https://www.sas.com/gms/redirect.jsp?detail=PLN24693_1501824202" data-cke-saved-href="https://www.sas.com/gms/redirect.jsp?detail=PLN24693_1501824202" target="_blank"&gt;Essential Functions of SAS Intelligent Decisioning&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;A href="https://www.sas.com/gms/redirect.jsp?detail=PLN24693_838344079" data-cke-saved-href="https://www.sas.com/gms/redirect.jsp?detail=PLN24693_838344079" target="_blank"&gt;Manage Models in SAS Viya Training&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;A href="https://www.sas.com/gms/redirect.jsp?detail=PLN24693_616477129" data-cke-saved-href="https://www.sas.com/gms/redirect.jsp?detail=PLN24693_616477129" target="_blank"&gt;SAS Intelligent Decisioning Homepage&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;A href="https://www.sas.com/gms/redirect.jsp?detail=PLN24693_484998507" data-cke-saved-href="https://www.sas.com/gms/redirect.jsp?detail=PLN24693_484998507" target="_blank"&gt;SAS Model Manager Homepage&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;A href="https://www.sas.com/gms/redirect.jsp?detail=PLN24693_266193342" data-cke-saved-href="https://www.sas.com/gms/redirect.jsp?detail=PLN24693_266193342" target="_blank"&gt;SAS Viya Homepage&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&lt;STRONG&gt;Please see additional resources in the attached slide deck.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;Want more tips? Be sure to subscribe to the&amp;nbsp;&lt;A href="http://communities.sas.com/askexpert" target="_blank"&gt;Ask the Expert board&lt;/A&gt;&amp;nbsp;to receive follow up Q&amp;amp;A, slides and recordings from other SAS Ask the Expert webinars.&lt;/P&gt;
&lt;/DIV&gt;</description>
      <pubDate>Tue, 23 Apr 2024 14:27:49 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Ask-the-Expert/Why-Do-I-Need-SAS-Intelligent-Decisioning-and-SAS-Model-Manager/ta-p/925389</guid>
      <dc:creator>Crystal_Baker</dc:creator>
      <dc:date>2024-04-23T14:27:49Z</dc:date>
    </item>
    <item>
      <title>Email Authentication Mechanisms - an Introduction</title>
      <link>https://communities.sas.com/t5/SAS-Communities-Library/Email-Authentication-Mechanisms-an-Introduction/ta-p/925333</link>
      <description>&lt;DIV class="lia-message-template-content-zone"&gt;
&lt;H1&gt;Email Authentication Mechanisms – an Introduction:&lt;/H1&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Email authentication is a set of techniques and protocols designed to verify the legitimacy of an email message and to prevent email fraud, such as phishing and spoofing. The goal is to ensure that the sender of an email is who they claim to be and that the content of the email has not been tampered with during transit. Email authentication helps in building trust between senders and recipients, reduces the likelihood of spam and phishing attacks, and improves overall email security. Several key authentication mechanisms are commonly used in email:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;STRONG&gt;SPF (Sender Policy Framework):&lt;/STRONG&gt; SPF is a framework that allows domain owners to specify which mail servers are authorized to send emails on behalf of their domain. This is achieved by publishing SPF records in the DNS (Domain Name System). Receiving mail servers can then check the SPF records to verify that an incoming email is sent from an authorized server.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;DKIM (DomainKeys Identified Mail):&lt;/STRONG&gt; DKIM is a method for associating a domain name with an email message, allowing a person, role, or organization to claim some responsibility for the message. It involves the use of cryptographic signatures that are added to the email headers. The receiving mail server can verify the signature using the public key published in the DNS.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;DMARC (Domain-based Message Authentication, Reporting, and Conformance):&lt;/STRONG&gt; DMARC builds on SPF and DKIM by providing a way for domain owners to set policies for how their emails should be handled if they fail authentication checks. DMARC also includes reporting features that allow domain owners to receive feedback on email authentication failures.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;BIMI (Brand Indicators for Message Identification):&lt;/STRONG&gt; BIMI is a relatively newer standard that enables organizations to display their brand logos next to authenticated emails in the recipient's inbox. It relies on the combination of DMARC and a verified logo file that is referenced in the DNS.&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;By implementing these authentication mechanisms, email senders can demonstrate the legitimacy of their messages, and recipients can have greater confidence that the emails they receive are not forged or manipulated. Additionally, DMARC policies help prevent attackers from abusing a brand's domain for malicious purposes. Overall, email authentication is a crucial aspect of modern email security and is widely used to combat various forms of email fraud.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;--------------------------------------------------------------------------------------------------------------------------------------&lt;/P&gt;
&lt;H1&gt;&lt;STRONG&gt;SPF:&lt;/STRONG&gt;&lt;/H1&gt;
&lt;P&gt;Sender Policy Framework (SPF) is an email authentication method designed to detect forged sender addresses during the delivery of the email. It is part of the broader set of technologies aimed at preventing email spoofing and phishing. SPF allows the owner of a domain to specify which mail servers are authorized to send emails on behalf of that domain.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;STRONG&gt;How SPF works:&lt;/STRONG&gt;&lt;/H2&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;STRONG&gt;DNS Records:&lt;/STRONG&gt; The domain owner publishes SPF information in the Domain Name System (DNS). SPF records are TXT records that contain information about the authorized mail servers for that domain.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Receiving Mail Server Checks SPF Record:&lt;/STRONG&gt; When an email is received, the receiving mail server can check the SPF record of the sender's domain by querying the DNS for the SPF TXT record.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Validation:&lt;/STRONG&gt; The receiving mail server compares the IP address of the sending server against the list of authorized IP addresses specified in the SPF record. If the IP address matches one of the authorized servers, the email passes the SPF check.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Handling Failures:&lt;/STRONG&gt; If the SPF check fails, the receiving mail server can take various actions based on the SPF policy specified by the domain owner. This might include marking the email as suspicious, moving it to the spam folder, or even rejecting it outright.&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;SPF records use a simple syntax to specify which IP addresses are allowed to send emails on behalf of a domain. For example, a basic SPF record might look like this:&lt;/P&gt;
&lt;P&gt;In this example:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;v=spf1&lt;/STRONG&gt; indicates the SPF version.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;ip4:192.168.1.1&lt;/STRONG&gt; allows the specific IP address 192.168.1.1 to send emails.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;include:spf.example.com&lt;/STRONG&gt; includes the SPF record of another domain (spf.example.com) in the check.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;-all&lt;/STRONG&gt; signifies a strict policy, indicating that if the IP address is not listed in the SPF record, the email should be treated as unauthorized.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;SPF is just one component of email authentication. Other techniques like DKIM (DomainKeys Identified Mail) and DMARC (Domain-based Message Authentication, Reporting, and Conformance) are often used in conjunction with SPF to enhance email security. These mechanisms collectively help in reducing spam, phishing, and email spoofing.&lt;/P&gt;
&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dietmarb_0-1713858014796.png" style="width: 400px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/95765i0FF9FE4D6ACE3D76/image-size/medium?v=v2&amp;amp;px=400" role="button" title="dietmarb_0-1713858014796.png" alt="dietmarb_0-1713858014796.png" /&gt;&lt;/span&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H1&gt;&lt;STRONG&gt;DKIM&lt;/STRONG&gt;&lt;/H1&gt;
&lt;P&gt;DKIM functions as a cryptographic authentication method. It allows email receivers to verify that an email claiming to have come from a specific domain was indeed authorized by the owner of that domain. This verification process occurs by validating the cryptographic signature included with the email.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;How DKIM works:&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Message Signing&lt;/STRONG&gt;: When an email is sent, the sending mail server adds a unique DKIM signature header to the message. This signature is created using a private cryptographic key associated with the sending domain.&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;STRONG&gt;Public Key Retrieval&lt;/STRONG&gt;: The receiving mail server, upon receiving the email, retrieves the public key from the DNS records of the sender's domain.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Signature Verification&lt;/STRONG&gt;: Using the public key, the receiving server verifies the DKIM signature attached to the email. If the signature is valid and the message has not been altered in transit, the email is deemed authentic.&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Benefits of DKIM&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;STRONG&gt;Enhanced Email Deliverability&lt;/STRONG&gt;: DKIM-signed emails are less likely to be marked as spam or phishing attempts by email filters, thus improving deliverability rates.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Mitigation of Spoofing and Phishing&lt;/STRONG&gt;: By verifying the authenticity of the sender, DKIM helps in reducing the risk of email spoofing and phishing attacks.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Builds Trust with Recipients&lt;/STRONG&gt;: Implementing DKIM instills confidence in recipients that the emails they receive are indeed from legitimate senders, fostering trust and credibility.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Compliance Requirements&lt;/STRONG&gt;: DKIM compliance is often a prerequisite for adhering to various industry regulations and standards, such as GDPR (General Data Protection Regulation) and HIPAA (Health Insurance Portability and Accountability Act).&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dietmarb_1-1713858014798.png" style="width: 400px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/95766iC7FD865C690CD04A/image-size/medium?v=v2&amp;amp;px=400" role="button" title="dietmarb_1-1713858014798.png" alt="dietmarb_1-1713858014798.png" /&gt;&lt;/span&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H1&gt;&lt;STRONG&gt;DMARC&lt;/STRONG&gt;&lt;/H1&gt;
&lt;P&gt;DMARC, which stands for Domain-based Message Authentication, Reporting, and Conformance, is an email authentication protocol and reporting system designed to combat email phishing and fraud. DMARC builds on the existing email authentication mechanisms SPF (Sender Policy Framework) and DKIM (DomainKeys Identified Mail) by providing a way for domain owners to specify how email failures should be handled and by offering reporting capabilities.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Key components of DMARC:&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Authentication Mechanisms:&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;SPF (Sender Policy Framework):&lt;/STRONG&gt; Verifies that the sending mail server is authorized by the domain owner.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;DKIM (DomainKeys Identified Mail):&lt;/STRONG&gt; Ensures that the email content has not been tampered with and is signed by the private key associated with the sending domain.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;DMARC Policies:&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Domain owners publish DMARC policies in their DNS records. These policies instruct receiving mail servers on how to handle emails that fail SPF and/or DKIM checks.&lt;/LI&gt;
&lt;LI&gt;DMARC policies include:
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;p=none (Monitoring Mode):&lt;/STRONG&gt; The domain owner is in "monitoring" mode, and no specific action is taken when authentication fails. However, detailed reports are generated and sent to the domain owner.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;p=quarantine:&lt;/STRONG&gt; The email should be treated with suspicion. Receiving mail servers may choose to deliver the email to the recipient's spam or quarantine folder.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;p=reject:&lt;/STRONG&gt; The email has failed authentication, and the receiving mail server should reject it outright. The strictest setting.&lt;/LI&gt;
&lt;/UL&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Reporting&lt;/STRONG&gt;&lt;STRONG&gt;:&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;DMARC provides detailed reports (DMARC reports or aggregate reports) to domain owners about email authentication activity. These reports include information on emails that passed or failed authentication, including the sending IP addresses, SPF results, DKIM results, and more.&lt;/LI&gt;
&lt;LI&gt;These reports enable domain owners to monitor and analyze email authentication activity, identify potential issues, and take corrective actions.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;DMARC helps prevent email spoofing and phishing attacks by providing a mechanism for domain owners to assert control over their domains and protect their brand reputation. It also allows them to receive valuable feedback on email authentication failures, helping to improve the overall security of their email infrastructure. Many large email providers and organizations have adopted DMARC as part of their email security strategy.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dietmarb_2-1713858014800.png" style="width: 400px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/95764i0D5602076A2EFF00/image-size/medium?v=v2&amp;amp;px=400" role="button" title="dietmarb_2-1713858014800.png" alt="dietmarb_2-1713858014800.png" /&gt;&lt;/span&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H1&gt;&lt;STRONG&gt;BIMI&lt;/STRONG&gt;&lt;/H1&gt;
&lt;P&gt;BIMI, which stands for Brand Indicators for Message Identification, is an email authentication standard that aims to enhance email security and brand visibility. BIMI allows organizations to display their brand logos next to authenticated emails in the recipient's inbox. This visual indicator helps users quickly recognize legitimate emails from trusted senders and builds trust in the email communication.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Key components of BIMI:&lt;/STRONG&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;STRONG&gt;DMARC Authentication:&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;OL&gt;
&lt;UL&gt;
&lt;LI&gt;BIMI relies on the DMARC (Domain-based Message Authentication, Reporting, and Conformance) protocol for email authentication. DMARC helps ensure that the sender's domain is legitimate and prevents email spoofing and phishing attacks.&lt;/LI&gt;
&lt;/UL&gt;
&lt;/OL&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;STRONG&gt;Verified Mark Certificates (VMC):&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;OL&gt;
&lt;UL&gt;
&lt;LI&gt;To participate in BIMI, organizations need to obtain a Verified Mark Certificate (VMC). A VMC is a digital certificate that confirms the association between the sender's domain, the brand logo, and the DMARC authentication. It acts as a proof of authenticity for the brand logo.&lt;/LI&gt;
&lt;/UL&gt;
&lt;/OL&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;STRONG&gt;DNS Records:&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;OL&gt;
&lt;UL&gt;
&lt;LI&gt;BIMI information is published in the DNS (Domain Name System) records of the sender's domain. This includes the location of the brand logo and the associated VMC.&lt;/LI&gt;
&lt;/UL&gt;
&lt;/OL&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;STRONG&gt;Display of Brand Logo:&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;OL&gt;
&lt;UL&gt;
&lt;LI&gt;When an email from a BIMI-enabled sender passes DMARC authentication, and the recipient's email client supports BIMI, the brand logo is displayed next to the email in the recipient's inbox. This provides a visual confirmation of the sender's authenticity.&lt;/LI&gt;
&lt;/UL&gt;
&lt;/OL&gt;
&lt;P&gt;The benefits of BIMI include:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Brand Trust:&lt;/STRONG&gt; The presence of a recognizable brand logo next to an email can enhance trust and help users distinguish legitimate emails from potential phishing attempts.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Improved Email Deliverability:&lt;/STRONG&gt; BIMI is an additional incentive for organizations to implement DMARC authentication. Email providers may prioritize the delivery of authenticated emails, contributing to better deliverability rates.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Reduced Phishing Risks:&lt;/STRONG&gt; By visually verifying the authenticity of the sender, BIMI helps users identify phishing attempts more easily, reducing the risk of falling victim to fraudulent emails.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;BIMI is an emerging standard, and its adoption is gradually increasing. As more organizations implement DMARC and obtain VMCs, BIMI has the potential to become a valuable tool in the fight against email fraud while providing a better user experience in email communication.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;/DIV&gt;</description>
      <pubDate>Tue, 23 Apr 2024 09:10:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Communities-Library/Email-Authentication-Mechanisms-an-Introduction/ta-p/925333</guid>
      <dc:creator>DietmarBurgfeld</dc:creator>
      <dc:date>2024-04-23T09:10:39Z</dc:date>
    </item>
    <item>
      <title>Comparing Alerting Capabilities of Alertmanager with Grafana</title>
      <link>https://communities.sas.com/t5/SAS-Communities-Library/Comparing-Alerting-Capabilities-of-Alertmanager-with-Grafana/ta-p/925286</link>
      <description>&lt;P&gt;&lt;A href="https://sww.sas.com/blogs/wp/gate/99197/comparing-alerting-capabilities-of-alertmanager-with-grafana/ssaajf/2024/04/02" data-auth="NotApplicable" data-linkindex="0" data-ogsc=""&gt;Comparing Alerting Capabilities of Alertmanager with Grafana&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 22 Apr 2024 20:12:55 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Communities-Library/Comparing-Alerting-Capabilities-of-Alertmanager-with-Grafana/ta-p/925286</guid>
      <dc:creator>AjmalFarzam</dc:creator>
      <dc:date>2024-04-22T20:12:55Z</dc:date>
    </item>
    <item>
      <title>Auditing user sessions in Viya 3.5 (update)</title>
      <link>https://communities.sas.com/t5/SAS-Communities-Library/Auditing-user-sessions-in-Viya-3-5-update/ta-p/925284</link>
      <description>&lt;P&gt;Auditing user sessions in Viya 3.5 (update)&lt;/P&gt;</description>
      <pubDate>Mon, 22 Apr 2024 20:10:25 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Communities-Library/Auditing-user-sessions-in-Viya-3-5-update/ta-p/925284</guid>
      <dc:creator>AjmalFarzam</dc:creator>
      <dc:date>2024-04-22T20:10:25Z</dc:date>
    </item>
    <item>
      <title>Solving Linear Regression Models via Mathematical Programming: Ordinary Least Squares</title>
      <link>https://communities.sas.com/t5/SAS-Communities-Library/Solving-Linear-Regression-Models-via-Mathematical-Programming/ta-p/925233</link>
      <description>&lt;P&gt;Solving Linear Regression Models via Mathematical Programming: Ordinary Least Squares&lt;/P&gt;</description>
      <pubDate>Mon, 22 Apr 2024 13:58:53 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Communities-Library/Solving-Linear-Regression-Models-via-Mathematical-Programming/ta-p/925233</guid>
      <dc:creator>ChanceTGardener</dc:creator>
      <dc:date>2024-04-22T13:58:53Z</dc:date>
    </item>
    <item>
      <title>Efficiently Modeling Interval Targets Using Bayesian Additive Regression Trees -Part 2</title>
      <link>https://communities.sas.com/t5/SAS-Communities-Library/Efficiently-Modeling-Interval-Targets-Using-Bayesian-Additive/ta-p/925207</link>
      <description>&lt;P&gt;&lt;STRONG&gt;Efficiently Modeling Interval Targets Using Bayesian Additive Regression Trees -Part 2&lt;/STRONG&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 22 Apr 2024 09:36:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Communities-Library/Efficiently-Modeling-Interval-Targets-Using-Bayesian-Additive/ta-p/925207</guid>
      <dc:creator>smanoj</dc:creator>
      <dc:date>2024-04-22T09:36:38Z</dc:date>
    </item>
  </channel>
</rss>

