<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>제씨 블로그</title>
    <link>https://bigdatajessie.tistory.com/</link>
    <description>저만큼의 은하가 있다고 생각하면 나의 존재를 되돌아보게 된다. 그래도 의미를 찾아가며 살아보고 싶은 작은 삶의 발버둥이 무력하게 하루하루를 소진하는 것보다 아름답고 벅차다.</description>
    <language>ko</language>
    <pubDate>Tue, 30 Jun 2026 20:01:06 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>제씨_</managingEditor>
    <image>
      <title>제씨 블로그</title>
      <url>https://tistory1.daumcdn.net/tistory/2918307/attach/166ea28bde0c4bb6829ae4db3d2e7ab3</url>
      <link>https://bigdatajessie.tistory.com</link>
    </image>
    <item>
      <title>[육아일기 D+79] 2개월이 지난 시점에서 돌아보는 육아생활</title>
      <link>https://bigdatajessie.tistory.com/74</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;[목차]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;1. 아기는 생각보다 너무 예쁘다.&amp;nbsp;&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;span&gt;2. 평소의 체력이 이 때 쓰인다.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;3. 오롯이 부부 둘이서 해나가는 것도 나쁘지 않다.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;4. 늘 신경써주기&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;5. 순간의 행복을 실감한다.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;1. 아기는 생각보다 너무 예쁘다.&amp;nbsp;&lt;/span&gt;&lt;/h2&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;나도 아내도 몰랐다. 둘 다 이렇게 팔불출이 될 줄은&lt;/span&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;이쁠거라고 예상정도만 했지 이렇게 엎어질 줄은 몰랐다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;아내는 아이를 낳기 전까지 아이들이 별로 귀엽지 않아서 내 아이도 안 예뻐하면 어쩌지 하는 쓸데없는 걱정도 했다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;똥을 싸도 예쁘고, 내 옷에 오줌을 싸도 예쁘고, 토해도 예쁘다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;아들이어도 너무 예쁘고 귀엽다. (내심 딸을 바랐다.)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;중요한 것은 결혼하고 아이를 낳기 전까지, 절대로 이 기분을 상상할 수 없었다는 것이다.&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;진정한 경험의 세계이다. 육아의 국면에 들어서기 전까지는, 이 기쁨을 절대로 알 수가 없다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;2. 평소의 체력이 이 때 쓰인다.&lt;/span&gt;&lt;/h2&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;육아는 잠과의 사투다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;밤에 2~3시간에 한 번씩 깨는 아이를 달래고 먹이고 재우는 과정을 하다보면, 두 사람이 번갈아가면서 해도 지치게 되어 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;더불어서 집안일, 새롭게 아이를 케어하며 생기는 모든 일들을 부부가 나눠서 하다보면 집안일이 끝나지를 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출근하는 사람은 그 피곤을 갖고 그대로 일터로 나가게 되어있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지치고 피곤하면 날이 서기 쉽고, 한 사람의 평온함이 다른 사람의 분노가 되기도 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;그래서 체력이 중요하다. 남는 체력으로 최대한 배우자의 짐을 덜겠다는 마인드를 지녀야 한다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 이 때 피곤을 이겨내며 지켜낸 아내의 한시간의 잠이 가정의 평화를 이룩한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;체력은 정말 중요하다. 평소에 길러놓지 않으면, 더더욱이나 힘들다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;3. 오롯이 부부 둘이서 해나가는 것도 나쁘지 않다.&lt;/span&gt;&lt;/h2&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;우리는 친정이나 시댁의 도움을 받지 않는다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;엄밀히 말하면 받지 못하기 때문에 둘이서 해나가는 것이지만, 100일의 기적을 3주 정도 앞둔 지금 시점에서 되돌아보면 이 과정이 오히려 더 좋았다고도 볼 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;그 이유로 첫째, 자족감이 생긴다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우리 둘이가 온전히 이 과정을 겪어내고 서로 의지하며 지나왔다는 사실이 뿌듯하다. 그리고 서로를 바라보는 애틋함, 그리고 약간 짠함이 섞이며 돈독해진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;둘째, 양가에 부담을 느끼지 않는다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;어떤 식으로든 도움을 구한다는 것은 빚을 지는 일처럼 느껴지기 마련이다. 부모님들은 기꺼이 해주실 수 있으나, 우리 부부 마음 속 깊은 곳에서는 부채감이 생길 수밖에 없다. 공짜는 없다. 부모님들이 도와주신다면, 돈이든 마음이든 발걸음이든 그들께서 원하시는 것을 우리가 맞춰드리는 것이 인지상정이다. 그래서 온전히 둘이 이 초반 육아를 감당해나가는 사실이 우리를 오히려 더 자유롭게 하는 측면이 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;4. 늘 서로 신경써주기&lt;/span&gt;&lt;/h2&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;나는 아내를 바라보며 그녀가 겪어야 하는 커다란 변화를 상상했다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;몸의 변화, 마음의 변화, 그리고 호르몬의 변화, 환경의 변화들을 상상하며 그녀가 겪을 혼란과 적응할 시간이 필요함을 이해하려고 하다보니, 자연히 아내의 필요를 찾아 움직이게 되는 것 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;나의 아내도 좋은 사람인지라, 그런 나의 마음을 금방 알아채고 내게도 더 잘해주려고 한다.&lt;b&gt; 서로 짠한가보다.&lt;/b&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;아내도 새벽에 두어번씩 깨며, 꾸벅꾸벅 눈을 감고 아이를 달래고 아침에 출근하는 나를 보며 비슷한 생각을 하는 듯하다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;서로 밖에 없다. 내가 아내를 물심양면 챙기고 내가 맞추는 삶이 행복한 삶이다.&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;5. 순간의 행복을 실감한다.&lt;/span&gt;&lt;/h2&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아이를 안고 미소를 지으며 행복이 지금임을 실감한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;늘 허상같은 행복을 좇지만, 실은 행복은 이미 내 곁에 있는 것, 이미 주어진 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아이가 있음으로써 이 사실을 더욱 실감할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f89009; color: #ffffff;&quot;&gt;&lt;u&gt;&lt;b&gt;결론적으로 육아는 추천한다. 걱정했던 것보다는 덜 힘들고, 즐거움은 더 많은 것 같다.&lt;/b&gt;&lt;/u&gt;&lt;/span&gt;&lt;/p&gt;</description>
      <category>Other Topics/육아일기</category>
      <category>100일의 기적</category>
      <category>79일차</category>
      <category>신혼부부 육아</category>
      <category>아이 키우기</category>
      <category>육아</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/74</guid>
      <comments>https://bigdatajessie.tistory.com/74#entry74comment</comments>
      <pubDate>Wed, 14 Sep 2022 22:59:39 +0900</pubDate>
    </item>
    <item>
      <title>[Career] 데이터 커리어 회고 - Data Consultant</title>
      <link>https://bigdatajessie.tistory.com/73</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;[목차]&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;background-color: #dddddd;&quot;&gt;&lt;b&gt;&lt;i&gt;1. 현재 상태&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;background-color: #dddddd;&quot;&gt;&lt;b&gt;&lt;i&gt;2. 내 커리어 여정&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;background-color: #dddddd;&quot;&gt;&lt;b&gt;&lt;i&gt;3. 취업준비생으로서 겪었던 어려움&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;background-color: #dddddd;&quot;&gt;&lt;b&gt;&lt;i&gt;4. 내가 추천하는 방법&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;background-color: #dddddd;&quot;&gt;&lt;b&gt;&lt;i&gt;5. 앞으로의 커리어&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;1. 현재 상태&lt;/b&gt;&lt;/h2&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나는 현재 국내 회계법인 &lt;b&gt;컨설팅 회사&lt;/b&gt;의 데이터 관련 조직에서 일하고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 조직에서 하는 일은 크게는&lt;b&gt; Data Science와 Data Platform / Governance / Road Map&lt;/b&gt; 수립 등이 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Data Science&lt;/b&gt;는 고객의 문제를 정의 후 알고리즘, 통계 등을 이용하여 해결하는 업무이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Data Platform&lt;/b&gt;은 빅데이터 플랫폼 수립, 데이터 인프라 등과 관련된 전반적인 컨설팅 업무를 의미한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 외&lt;b&gt; Governance / Road Map&lt;/b&gt; 등은 데이터를 어떻게 관리하고, 프로젝트를 시작할 지 모르는 기업들을 컨설팅하는 서비스이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;2. 내 커리어 여정&lt;/b&gt;&lt;/h2&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나는 &lt;b&gt;BI&lt;/b&gt;(Business Intelligence) 부문에서 커리어를 시작했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;쉽게 얘기하자면, 시각화 개발이고, &lt;b&gt;QlikView&lt;/b&gt;를 내 처음 Tool로써 접했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;개인적으로 시각화 툴로써 데이터를 접했던 과정이, 어떻게 데이터를 핸들링하고 가공해야 하는지 이해하고 그 과정을 직접 시각화로 확인할 수 있어서 좋은 시작점이었다고 본다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 회사를 현재의 컨설팅 회사로 옮겨 지표 설계 ~ 개발까지의 업무를 모두 진행해보고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;추가된 것은, 내가 고객의 비즈니스를 최대한 이해하고, 회사의 Asset을 활용하여 고객에게 선제시 한다는 점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;3. 취준생으로서 겪었던 어려움&lt;/b&gt;&lt;/h2&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;취업 준비를 할 당시만 해도 데이터 분야의 정보가 너무 적었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다들 개발 얘기를 하거나, 머신러닝이나&amp;nbsp; AI 이야기를 했을 뿐이고,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 Python이 얼마나 중요하고 시각화를 만드는 기술이 어떻고라는 기술에 대해서 주로 이야기가 오갔다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 &quot;진짜 데이터로 Business를 어떻게 해결한다는걸까?&quot; 라는 질문에 대답을 해줄 수 있는 사람이 극히 드물었다. 드문 정도가 아니라 내게는 없었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 면접 때마다 공허한 얘기를 늘어놓아야 했는데, 이게 내가 맞닥드린 가장 큰 어려움이었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;더불어 나는 대학시절을 탱탱 놀다가 취업전선에 뛰어들어 Tool 들에 익숙하지 못했는데, 이게 무척 높은 허들이었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;4. 내가 추천하는 지원 방법&lt;/b&gt;&lt;/h2&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼에도 불구하고 내가 적용했던 방법은 바닥부터 시작하는 일이었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;BI 개발을 시작했던 회사의 면접 때가 생각나는데, 나는 연속 낙방을 하느라 조금 지쳐있었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일부 회사에서는 내가 아무것도 없으면서, 무언가를 만들어본양 허풍을 늘어놓기도 했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;u&gt;그러나 면접관들은 거짓을 잘 분별할 줄 안다. &lt;/u&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내가 이 업에서 조금만 있어봐도 누가 허황된 말을 하는지 금방 판별할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 나는 면접에서 나를 내려놓고, 나는 아무것도 아는 게 없지만 열정을 가지고 배워볼 자신이 있다고 스스로를 어필했다. 그리고 이 점을 당시 나를 뽑아주셨던 본부장님께서 좋게 보신 모양이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일은 들어와서 배워도 되지만, 얼마나 열심히 하려고 하는지, 진실하게 원하는 지를 평가하신 것 같았다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;결론을 얘기하자면, 어떤 회사라도 첫 커리어로 괜찮다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;너무 대기업에 들어가려고 하거나, 네카라쿠배당토에 목 맬 필요는 없지 싶다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;어느 회사든 들어가서 일을 하고, 공부하면서 기술과 데이터를 이해하기 시작하면 그 다음 길은 점점 넓어질 것이기 때문이다. 나는 그렇게 느끼고 있으며, 앞으로도 그렇게 될 것이라 생각한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;5. 앞으로의 커리어&lt;/b&gt;&lt;/h2&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사실 나 역시도 너무나 많은 고민을 하고 있다. 특히 아래와 같은 고민을 하며 살고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;개발자의 끝은 무엇인가? 컨설턴트의 끝은 무엇인가? 데이터 분석가는 20년 30년 분석가로서 남을 수 있는가? 앞으로 나는 살아남을 직업을 선택하고 있는가?&amp;nbsp;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;과거 선배들의 말은 이미 지나간 과거에 유효하며, 세상은 너무 빨리 바뀌고 기술도 자꾸 변한다. 그래서 그들의 말을 참고는 하되 너무 맹신할 필요는 없다. 그들도 모르게 낡았을 수도 있기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 Data를 무기로 가져가되, 여러 기술에 관심을 가지고&amp;nbsp;Business에 이런 기술들을 접목할 지 계속 고민하는 것 만이 앞으로의 변화에 대응하는 길이라고 본다.&lt;/p&gt;</description>
      <category>Data/Career</category>
      <category>Data Career</category>
      <category>Data Consultant</category>
      <category>data science</category>
      <category>Data 직무</category>
      <category>Data 커리어</category>
      <category>데이터 분석가 취업</category>
      <category>데이터 취업</category>
      <category>데이터 컨설턴트</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/73</guid>
      <comments>https://bigdatajessie.tistory.com/73#entry73comment</comments>
      <pubDate>Sun, 4 Sep 2022 23:14:33 +0900</pubDate>
    </item>
    <item>
      <title>서울시 신혼부부 임차보증금 이자지원 사업 후기</title>
      <link>https://bigdatajessie.tistory.com/72</link>
      <description>&lt;h1&gt;개요&lt;/h1&gt;
&lt;hr data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt; &lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
 &lt;li&gt;결혼을 준비하면서 2022년 2월 16일 전세계약을 체결했고 &lt;b&gt;&quot;서울시 신혼부부 임차보증금 이자지원&quot;&lt;/b&gt;사업을 신청하였음&lt;/li&gt;
 &lt;li&gt;지금 살고 있는 집이 2억 정도이므로 약 &lt;span style=&quot;background-color: #F3C000;&quot;&gt;1.8억을 대출받았으며(90%), 최종 1.5% 정도의 이자율을 책정받았고, 월 약 25만원 정도&lt;/span&gt;를 매달 내고 있음&lt;/li&gt;
 &lt;li&gt;&lt;span style=&quot;background-color: #F3C000;&quot;&gt;2023.2 기준, 이율이 올라 2.12%, 32만원 정도를 납부중&lt;/span&gt;&lt;/li&gt;
 &lt;li&gt;신혼부부이고, 서울시에 거주 예정이고, 전세로 시작한다면 가장 좋은 조건으로 전세대출을 받을 수 있는 정책&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;사업소개&lt;/h1&gt;
&lt;hr data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt; &lt;br&gt;&lt;a href=&quot;https://housing.seoul.go.kr/site/main/content/sh01_0400800&quot; target=&quot;_self&quot;&gt;&lt;span&gt;서울시주거포털 - 신혼부부 임차보증금 이자지원&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;사업개요 | 신혼부부 임차보증금 이자지원 | 청년·신혼부부 지원 | 주거 정책 | 서울주거포털&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;서울주거포털,신혼부부들의 행복한 미래를 위해 더 나은 주거환경과 소득대비 높은 주거비 부담을 완화하기 위해 신혼부부 임차보증금 지원사업을 시행합니다. &amp;nbsp; ※ 신청 전 유의사항 : 서울시&quot; data-og-host=&quot;housing.seoul.go.kr&quot; data-og-source-url=&quot;https://housing.seoul.go.kr/site/main/content/sh01_0400800&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/ccC27J/hyPHsTHb51/kyD5nCkoaErRGTchEatMlK/img.gif?width=200&amp;amp;height=200&amp;amp;face=0_0_200_200&quot; data-og-url=&quot;https://housing.seoul.go.kr/site/main/content/sh01_0400800&quot;&gt;
 &lt;a href=&quot;https://housing.seoul.go.kr/site/main/content/sh01_0400800&quot; target=&quot;_blank&quot; data-source-url=&quot;https://housing.seoul.go.kr/site/main/content/sh01_0400800&quot;&gt;
  &lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/ccC27J/hyPHsTHb51/kyD5nCkoaErRGTchEatMlK/img.gif?width=200&amp;amp;height=200&amp;amp;face=0_0_200_200')&quot;&gt; 
  &lt;/div&gt;
  &lt;div class=&quot;og-text&quot;&gt;
   &lt;p class=&quot;og-title&quot;&gt;사업개요 | 신혼부부 임차보증금 이자지원 | 청년·신혼부부 지원 | 주거 정책 | 서울주거포털&lt;/p&gt;
   &lt;p class=&quot;og-desc&quot;&gt;서울주거포털,신혼부부들의 행복한 미래를 위해 더 나은 주거환경과 소득대비 높은 주거비 부담을 완화하기 위해 신혼부부 임차보증금 지원사업을 시행합니다. &amp;nbsp; ※ 신청 전 유의사항 : 서울시&lt;/p&gt;
   &lt;p class=&quot;og-host&quot;&gt;housing.seoul.go.kr&lt;/p&gt;
  &lt;/div&gt;&lt;/a&gt;
&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt; &lt;br&gt; &lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/loan/img1.png&quot; alt=&quot;img&quot;&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt; 
 &lt;li&gt;핵심 조건 
  &lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt; 
   &lt;li&gt;신혼부부 또는 예비 신혼부부&lt;/li&gt; 
   &lt;li&gt;부부합산 소득 9,700만원 이하&lt;/li&gt; 
   &lt;li&gt;서울시 관내의 임차보증금 7억원 이하의 주택, 오피스텔, 다세대 주택 등 (상세 내용은 PDF 참조)&lt;/li&gt; 
  &lt;/ul&gt; &lt;/li&gt; 
 &lt;li&gt;취급은행 
  &lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt; 
   &lt;li&gt;국민, 신한, 하나 
    &lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt; 
     &lt;li&gt;나는 주거래은행이었던 신한은행에서 했으며, 당시 국민은행은 지원자 TO가 없다고 했음&lt;/li&gt; 
    &lt;/ul&gt; &lt;/li&gt; 
  &lt;/ul&gt; &lt;/li&gt; 
&lt;/ul&gt;
&lt;h1&gt;진행순서&lt;/h1&gt;
&lt;hr data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style1&quot;&gt;
&lt;ol style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt; 
 &lt;li&gt;&lt;b&gt;전세매물 찾기&lt;/b&gt; 
  &lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt; 
   &lt;li&gt;네이버 부동산으로 열심히 전세 매물을 찾는다.&lt;/li&gt; 
   &lt;li&gt;마음 속의 금액을 중심으로 찾으며 목표하는 매물들의 대략적인 대출금액을 알아둔다.&lt;/li&gt; 
  &lt;/ul&gt; &lt;/li&gt; 
 &lt;li&gt;&lt;b&gt;은행 방문&lt;/b&gt; 
  &lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt; 
   &lt;li&gt;은행에 방문하여 본인이 해당 사업의 대출이 가능한지 알아본다.&lt;/li&gt; 
   &lt;li&gt;예비 배우자의 전세 상황도 공유하여 대출이 가능한지 등등을 꼼꼼히 따지고 다음 스탭을 진행한다.&lt;/li&gt; 
   &lt;li&gt;개인적으로 은행을 여러 번 방문하여 등기를 보여주며 해당 매물이 가능할지 물어보았다. 처음이라 불안함이 컸다.&lt;/li&gt; 
  &lt;/ul&gt; &lt;/li&gt; 
 &lt;li&gt;&lt;b&gt;전세매물 계약&lt;/b&gt; 
  &lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt; 
   &lt;li&gt;전세매물을 찾고 전세대출이 가능한 매물인지 반드시 확인. 불법건출물은 아닌지, 해당 매물에 과도한 빚은 없는지 등등&lt;/li&gt; 
   &lt;li&gt;매물이 확정되면 계약을 하되, 전체 계약금의 5% 이상을 지불했다는 지급 영수증을 반드시 챙긴다. (부동산 중개인이 전세대출한다고 하면 서류를 대부분 챙겨준다.)&lt;/li&gt; 
   &lt;li&gt;계약하면 그 이후 바로 &lt;b&gt;확정일자&lt;/b&gt;를 받으러 간다. 등기소로 가거나 해당 주민센터로 가면 확정일자를 받아준다. 확정일자가 찍혀있어야 은행에서 대출을 실행해준다.&lt;/li&gt; 
  &lt;/ul&gt; &lt;/li&gt; 
 &lt;li&gt;&lt;b&gt;서울주거포털&lt;/b&gt; &lt;b&gt;신청&lt;/b&gt; 
  &lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt; 
   &lt;li&gt;&lt;a href=&quot;https://housing.seoul.go.kr/&quot;&gt;서울시 주거포털&lt;/a&gt;에 &lt;b&gt;융자신청서&lt;/b&gt; 신청&lt;/li&gt; 
   &lt;li&gt;3일 정도 걸린다고 하나, 보통 다음날이면 담당자가 확인해줌&lt;/li&gt; 
   &lt;li&gt;나는 2번 정도 반려되었었는데 대부분 오타나 잘못 기입한 정보였으므로 처음부터 꼼꼼하게 작성할 것을 추천&lt;/li&gt; 
   &lt;li&gt;추천서가 발급되면 출력해서 나머지 서류들과 함께 챙기기&lt;/li&gt; 
  &lt;/ul&gt; &lt;/li&gt; 
 &lt;li&gt;&lt;b&gt;은행 방문&lt;/b&gt; 
  &lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt; 
   &lt;li&gt;은행 방문은 배우자와 함께 가야 함&lt;/li&gt; 
   &lt;li&gt;같이 못가는 경우 사업소개공고문을 확인하여 적절한 서류들을 챙겨야 한다.&lt;/li&gt; 
   &lt;li&gt;서류는 아래와 같이 챙겨야 한다. 
    &lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt; 
     &lt;li&gt;신분증&lt;/li&gt; 
     &lt;li&gt;주민등록등본&lt;/li&gt; 
     &lt;li&gt;가족관계증명서&lt;/li&gt; 
     &lt;li&gt;혼인관계증명서(예비부부의 경우 혼인관계증명서를 예식장 계약서로 갈음)&lt;/li&gt; 
     &lt;li&gt;임대차계약서(확정일자부)&lt;/li&gt; 
     &lt;li&gt;지급영수증&lt;/li&gt; 
     &lt;li&gt;융자추천서&lt;/li&gt; 
     &lt;li&gt;건물등기사항전부증명서&lt;/li&gt; 
     &lt;li&gt;근로소득원천징수영수증(or 월급여명세서 12개월치)&lt;/li&gt; 
     &lt;li&gt;재직증명서(or 건강보험자격득실확인서)&lt;/li&gt; 
    &lt;/ul&gt; &lt;/li&gt; 
  &lt;/ul&gt; &lt;/li&gt; 
 &lt;li&gt;&lt;b&gt;대출 실행 및 잔금 치르기&lt;/b&gt; 
  &lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt; 
   &lt;li&gt;대출이 승인되면 잔금일에 맞춰 은행에서 집주인 계좌로 송금하게 된다.&lt;/li&gt; 
   &lt;li&gt;잔금을 치르고 잔금일에 전입신고를 해준다.&lt;/li&gt; 
  &lt;/ul&gt; &lt;/li&gt; 
&lt;/ol&gt;
&lt;h1&gt;주의사항&lt;/h1&gt;
&lt;hr data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style1&quot;&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
 &lt;li&gt;서류가 정말 많다. 일시에 따라 서류가 바뀔 수도 있으니 꼭 공고문을 다시 확인하고 서류를 챙겨가길 바람&lt;/li&gt;
 &lt;li&gt;임대차계약서의 &lt;b&gt;&lt;span style=&quot;background-color: #F3C000;&quot;&gt;확정일자는 잔금일이 아니라 계약일에 받아야 한다&lt;/span&gt;.&lt;/b&gt; 확정일자가 안찍혀있으면 대출을 실행할 수 없다.&lt;/li&gt;
 &lt;li&gt;각자 사정에 따라 궁금한 부분이 많을텐데, &lt;b&gt;QnA&lt;/b&gt;문서를 꼼꼼히 읽어보면 대부분 해결할 수 있다. 나는 해당 문서를 프린트해서 형관펜으로 확인해가며 세부사항을 확인했다.&lt;/li&gt;
 &lt;li&gt;애매한 부분이 있다면 협약은행에 반드시 문의할 것을 당부드린다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;대환하는 경우&lt;/h1&gt;
&lt;hr data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt; &lt;br&gt;아내가 &lt;b&gt;중소기업청년전세대출&lt;/b&gt;이 있어서 대환의 형식을 거쳤다.(당연히 중복해서 대출하는 기간이 있으면 안된다.) 우리 부부가 대환을 진행한 순서는 아래와 같다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt; 
 &lt;li&gt;아내가 살던 방 내놓고 들어올 세입자와의 잔금일 확인 
  &lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt; 
   &lt;li&gt;해당 잔금일은, 우리 부부가 들어갈 잔금일보다 1주일 정도 빨라서 기간이 조금 촉박했다.&lt;/li&gt; 
   &lt;li&gt;은행에 방문해서 어떻게 해야 하는지 자주 물어봤다. 신한은행의 모바일톡도 애용했다.&lt;/li&gt; 
  &lt;/ul&gt; &lt;/li&gt; 
 &lt;li&gt;위 대출 순서 중 &lt;b&gt;5번, 은행방문&lt;/b&gt; 시에 아내의 대출금이 먼저 상환될 것임을 알리고 대출을 진행한다. 
  &lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt; 
   &lt;li&gt;대출이 상환되면, 일정 영업일이 지나야 상환된 내역이 데이터로 남는다고 한다.&lt;/li&gt; 
   &lt;li&gt;상환이 확인되면 곧바로 다음 대출 승인이 진행된다.&lt;/li&gt; 
   &lt;li&gt;단점은 1주일정도 거주할 공간이 없는 일자가 생기는데, 이는 각자의 사정에 맞게 해결이 필요하다.&lt;/li&gt; 
  &lt;/ul&gt; &lt;/li&gt; 
&lt;/ol&gt;</description>
      <category>Other Topics/기타</category>
      <category>대환대출</category>
      <category>서울시 신혼부부 임차보증금 이자지원</category>
      <category>서울시 신혼부부 전세대출 이자지원</category>
      <category>신혼부부 저렴한 전세대출</category>
      <category>신혼부부 전세대출</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/72</guid>
      <comments>https://bigdatajessie.tistory.com/72#entry72comment</comments>
      <pubDate>Tue, 31 May 2022 00:32:28 +0900</pubDate>
    </item>
    <item>
      <title>경사하강법(Gradient Decent) 정리</title>
      <link>https://bigdatajessie.tistory.com/71</link>
      <description>&lt;h1&gt;경사하강법 정의&lt;/h1&gt;
&lt;hr&gt;
&lt;p&gt;&lt;strong&gt;경사 하강법(傾斜下降法, Gradient descent)&lt;/strong&gt;은 1차 근삿값 발견용 최적화 알고리즘이다. 기본 개념은 함수의 기울기(경사)를 구하고 경사의 반대 방향으로 계속 이동시켜 극값에 이를 때까지 반복시키는 것이다&lt;br&gt;&lt;a href=&quot;https://ko.wikipedia.org/wiki/%EA%B2%BD%EC%82%AC_%ED%95%98%EA%B0%95%EB%B2%95&quot;&gt;위키피디아&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;이 개념을 숙지하기 위해서는 비용함수라는 개념을 먼저 알아두면 좋다.&lt;/p&gt;
&lt;h2&gt;비용함수&lt;/h2&gt;
&lt;p&gt;$$y = w_1*x_1 + w_0$$ 라는 회귀식이 있을 경우, 이 함수의 *_비용함수 RSS**는 다음과 같다. (약간의 회귀분석에 대한 개념이 필요)&lt;/p&gt;
&lt;p&gt;$$RSS(w_0, w_1) = \frac{1}{N}\sum_{i=1}^{N}(y_i-(w_0+w_1*x_i))^2$$&lt;/p&gt;
&lt;p&gt;여기서 &lt;strong&gt;N&lt;/strong&gt;은 학습데이터의 총 건수이며, &lt;strong&gt;i&lt;/strong&gt;는 각 데이터포인트이다. 회귀에서는 이 RSS는 비용이라고 하며 w변수로 구성되는 RSS를 &lt;strong&gt;비용함수&lt;/strong&gt;, 또는 &lt;strong&gt;손실함수(loss function)&lt;/strong&gt;라고 한다. 머신러닝 회귀 알고리즘에서는 데이터를 계속 학습하면서 이 비용함수가 반환되는 값을 지속해서 감소시키고, 최종적으로는 더이상 감소하지 않는 최소의 오류값을 구하고자 한다.&lt;br&gt;오류값을 지속해서 작아지게 하는 방향으로 W값을 계속 업데이트해 나가며, 오류값이 더 이상 작아지지 않으면 그 오류값을 최소 비용으로 판단하고 그 W를 최적의 파라미터로 판단한다.&lt;/p&gt;
&lt;h2&gt;머신러닝에서 쓰이는 이유&lt;/h2&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;그럼 비용함수가 최소가 되는 W파라미터를 어떻게 구할 수 있을까?&lt;/strong&gt;&lt;/em&gt; 하는 대답에 경사하강법이 사용되는 것이다. 모든 변수(x)를 미분하여 최소값을 가지는 계수를 찾아내는 방법이 있을 수 있으나 아래의 이유로 경사하강법이 쓰인다.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;실제 분석에서는 함수의 형태가 복잡하므로 미분계수와 그 근을 계산하기 어려움&lt;/li&gt;
&lt;li&gt;컴퓨터로는 미분계산과정의 구현보다 경사하강법 구현이 더 쉬움&lt;/li&gt;
&lt;li&gt;데이터 양이 많을 수록 경사하강법이 계산량 측면에서 효율적임&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;경사하강법의 수식, 유도 및 원리&lt;/h2&gt;
&lt;p&gt;경사하강법을 유도하는 원리는 아래 사이트가 잘 정리되어 있어 참고했다.&lt;br&gt;&lt;a href=&quot;https://angeloyeo.github.io/2020/08/16/gradient_descent.html&quot;&gt;https://angeloyeo.github.io/2020/08/16/gradient_descent.html&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;파이썬 코드 구현&lt;/h2&gt;
&lt;pre&gt;&lt;code&gt;import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline

np.random.seed(0)

# y = 4X + 6을 근사, 임의의 값은 노이즈를 위해 부여
X = 2 * np.random.rand(100,1) # 0~1 사이의 random 소수 
y = 6 + 4*X+ np.random.randn(100,1)&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;plt.scatter(X,y)&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/gradient/output_2_1.png&quot; alt=&quot;png&quot;&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;def get_cost(y, y_pred):
    N = len(y)
    cost = np.sum(np.square(y - y_pred))/N
    return cost&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;# w1과 w0를 업데이트할 w1_update, w0_update를 반환
def get_weight_updates(w1, w0, X, y, learning_rate=0.01):
    N = len(y)

    w1_update = np.zeros_like(w1)
    w0_update = np.zeros_like(w0)

    y_pred = np.dot(X, w1.T) + w0
    diff = y - y_pred

    w0_factors = np.ones((N,1))

    # w1과 w0를 업데이트할 w1_update와 w0_update 계산
    w1_update = -(2/N)*learning_rate*(np.dot(X.T, diff))
    w0_update = -(2/N)*learning_rate*(np.dot(w0_factors.T, diff))

    return w1_update, w0_update&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;def gradient_descent_stpes(X, y, iters=10000):
    # 초기값 0으로 설정
    w0 = np.zeros((1,1))
    w1 = np.zeros((1,1))

    # 인자로 주어진 iters 만큼 반복적으로 get_weight_updates() 호출해 w1, w0 업데이트
    for ind in range(iters):
        w1_update, w0_update = get_weight_updates(w1, w0, X, y, learning_rate=0.01)
        w1 = w1 - w1_update
        w0 = w0 - w0_update

    return w1, w0&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;def get_cost(y, y_pred):
    N = len(y)
    cost = np.sum(np.square(y - y_pred))/N
    return cost

w1, w0 = gradient_descent_stpes(X,y, iters=1000)
print(f&amp;quot;w1 : {w1[0,0]:.3f}, w0 : {w0[0,0]:.3f}&amp;quot;)
y_pred = w1[0, 0]*X + w0
print(&amp;quot;GD Total Cost&amp;quot;, round(get_cost(y, y_pred),4))&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;w1 : 4.022, w0 : 6.162
GD Total Cost 0.9935&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;plt.scatter(X,y)
plt.plot(X, y_pred)&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/gradient/output_7_1.png&quot; alt=&quot;png&quot;&gt;&lt;/p&gt;
&lt;h1&gt;확률적 경사하강법&lt;/h1&gt;
&lt;hr&gt;
&lt;p&gt;&lt;strong&gt;확률적 경사 하강법(Stochastic Gradient Descent)&lt;/strong&gt;는 경사 하강법과 다르게 한번 학습할 때 모든 데이터에 대해 가중치를 조절하는 것이 아니라, 램덤하게 추출한 일부 데이터에 대해 가중치를 조절함. 결과적으로 속도는 개선되었지만 최적 해의 정확도는 낮다.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/996AFC3C5B0CF0C901&quot; alt=&quot;img1&quot;&gt;&lt;/p&gt;
&lt;p&gt;출처: &lt;a href=&quot;https://twinw.tistory.com/247&quot;&gt;흰고래의꿈&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;파이썬 코드 구현&lt;/h2&gt;
&lt;pre&gt;&lt;code&gt;def stochastic_gradient_descent_stpes(X, y, batch_size=10, iters=1000):
    w0 = np.zeros((1,1))
    w1 = np.zeros((1,1))
    prev_cost = 100000
    iter_index = 0

    for ind in range(iters):
        np.random.seed(ind)
        # 전체 X,y 데이터에서 랜덤하게 batch_size만큼 데이터 추출하여 sample_X, sample_y로 저장
        stochastic_random_index = np.random.permutation(X.shape[0])
        sample_X = X[stochastic_random_index[0:batch_size]]
        sample_y = y[stochastic_random_index[0:batch_size]]
        # 랜덤하게 batch_size만큼 추출된 데이터 기반으로 w1_update, w0_update 계산 후 업데이트
        w1_update, w0_update = get_weight_updates(w1, w0, sample_X, sample_y, learning_rate = 0.01)
        w1 = w1 - w1_update
        w0 = w0 - w0_update

    return w1, w0&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;w1, w0 = stochastic_gradient_descent_stpes(X, y, iters= 1000)
print(&amp;quot;w1 :&amp;quot;, round(w1[0,0], 3), &amp;quot;w0:&amp;quot;, round(w0[0,0], 3))
y_pred = w1[0, 0]*X + w0
print(&amp;quot;Stochastic Gradient Descent Total cost : &amp;quot;,get_cost(y, y_pred))&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;w1 : 4.028 w0: 6.156
Stochastic Gradient Descent Total cost :  0.9937111256675345&lt;/code&gt;&lt;/pre&gt;&lt;h1&gt;참고 사이트&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://velog.io/@sasganamabeer/AI-Gradient-Descent%EA%B2%BD%EC%82%AC%ED%95%98%EA%B0%95%EB%B2%95&quot;&gt;경사하강법 정리 및 소개&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://angeloyeo.github.io/2020/08/16/gradient_descent.html&quot;&gt;경사하강법의 수식 및 원리&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://twinw.tistory.com/247&quot;&gt;경사하강법의 종류&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>Data/Machine Learning</category>
      <category>gradient descent</category>
      <category>sgd</category>
      <category>경사하강법</category>
      <category>경사하강법 기초</category>
      <category>경사하강법 정리</category>
      <category>경사하강법과 확률적경사하강법 차이</category>
      <category>확률적경사하강법</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/71</guid>
      <comments>https://bigdatajessie.tistory.com/71#entry71comment</comments>
      <pubDate>Tue, 12 Apr 2022 15:09:11 +0900</pubDate>
    </item>
    <item>
      <title>PCA(주성분 분석), 고유값, 고유벡터 정리</title>
      <link>https://bigdatajessie.tistory.com/70</link>
      <description>&lt;h1&gt;고유값과 고유벡터&lt;/h1&gt;
&lt;p&gt;고유값과 고유벡터는 앞서 활용한 공분산행렬, 그리고 앞에 설명할 주성분 분석과 뗄 수 없는 관계이다. 따라서 PCA의 메커니즘을 제대로 이해하기 위해서는 고유값과 고유벡터가 의마하는 바를 제대로 이해하는 게 좋다.&lt;/p&gt;
&lt;h2&gt;고유값과 고유벡터 설명&lt;/h2&gt;
&lt;hr&gt;
&lt;p&gt;$$X=\begin{bmatrix} 1 \\ 1 \end{bmatrix}$$ 이라는 행렬이 있다고 가정해보자. 이 행렬에 만약 $$A=\begin{bmatrix} 2&amp;amp;1 \\ 1&amp;amp;2 \end{bmatrix}$$를 선형변환하면 이렇게 계산할 수 있다.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;$$AX= \begin{bmatrix} 2&amp;amp;1 \\ 1&amp;amp;2 \end{bmatrix}\begin{bmatrix} 1 \\ 1 \end{bmatrix}=\begin{bmatrix} 3 \\ 3 \end{bmatrix}$$&lt;br&gt;즉 어떤 벡터에 A를 곱하니 벡터의 방향은 그대로이고 길이만 변하였다고 표현할 수 있다. 다시 말하면 아래 좌표평면에 있는 (1,1) 벡터가 (3,3)가지 방향의 변환 없이 그대로 이동한 것이다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/eigen/coordinate.PNG&quot; alt=&quot;img&quot;&gt;&lt;/p&gt;
&lt;p&gt;여기서 $$AX = \lambda X$$ 가 되는 $$\lambda$$ 값이 바로 &lt;strong&gt;고유값(eigen value)&lt;/strong&gt;이다. 조금 더 정리를 해보자&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;$$AX - \lambda IX = (A - \lambda I)X = 0$$&lt;/li&gt;
&lt;li&gt;$$det(A - \lambda I) = 0$$ (det는 &lt;strong&gt;determinant&lt;/strong&gt;이며, &lt;strong&gt;$$ad-bc$$&lt;/strong&gt;의 형태로 행렬값을 계산하는 수식임)&lt;/li&gt;
&lt;li&gt;$$det(A - \lambda I) = det\begin{bmatrix} 2-\lambda&amp;amp;1 \\ 1&amp;amp;2-\lambda \end{bmatrix} = 0$$&lt;/li&gt;
&lt;li&gt;$$(2-\lambda)^2 -1 = (\lambda-1)(\lambda-3) = 0 $$&lt;/li&gt;
&lt;li&gt;$$\lambda =2$$ or $$\lambda =3$$&lt;/li&gt;
&lt;li&gt;즉 고유값은 2 또는 3이다&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;그럼 여기서 &lt;strong&gt;고유벡터&lt;/strong&gt;를 구하면 아래와 같이 볼 수 있다&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;고유값이 3인 경우, $$\begin{bmatrix} 2&amp;amp;1 \\ 1&amp;amp;2 \end{bmatrix}\begin{bmatrix} X_1 \\ X_2 \end{bmatrix} = 3\begin{bmatrix} X_1 \ X_2 \end{bmatrix}$$&lt;ul&gt;
&lt;li&gt;$$2X_1 + X_2 = 3X_1$$&lt;/li&gt;
&lt;li&gt;$$X_1 + 2X_2 = 3X_2$$&lt;/li&gt;
&lt;li&gt;$$X_1 = X_2$$&lt;/li&gt;
&lt;li&gt;가장 쉬운 형태의 고유행렬로 $$\begin{bmatrix} X_1 \\ X_2 \end{bmatrix} = \begin{bmatrix} 1 \\ 1 \end{bmatrix} $$로 볼 수 있다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;고유값이 1인 경우도 동일하게 구할 수 있다&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;고유값과 고유벡터의 의미&lt;/h2&gt;
&lt;hr&gt;
&lt;p&gt;$$A$$ 행렬을 &lt;strong&gt;공분산 행렬(covariance matrix)&lt;/strong&gt;이라고 생각해보자.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;$$\begin{bmatrix} 2&amp;amp;1 \\ 1&amp;amp;2 \end{bmatrix}$$ 행렬의 고유값은 1과 3이다&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;고유값의 합&lt;/strong&gt;은 4로, 두 분산의 합(2+2)과 같다&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;고유값의 곱&lt;/strong&gt;은 $$det(A) = (2_2 - 1_1)$$과 동일&lt;/li&gt;
&lt;li&gt;분산정보는 최대한 해치지 않으면서 차원을 축소하기 위해 고유값과 고유벡터를 찾아낸 것&lt;/li&gt;
&lt;li&gt;고유벡터는 행렬 A를 곱하더라도 방향이 변하지 않고 그 크기만 변하는 벡터를 의미함&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;주성분 분석(PCA)&lt;/h1&gt;
&lt;h2&gt;주성분 분석의 목적&lt;/h2&gt;
&lt;hr&gt;
&lt;p&gt;주성분 분석의 목적 및 핵심은 아래와 같다.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;고차원의 데이터를 저차원으로 줄이는 것&lt;/li&gt;
&lt;li&gt;공통된 변수들을 줄여서 주성분을 찾는 것&lt;ul&gt;
&lt;li&gt;사용된 변수의 개수 &amp;gt; 주성분의 개수&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;하지만 전체 데이터의 분산에 영향을 주어서는 안됨&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;주성분 뽑아낼 때 원칙&lt;/h2&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;분산이 가장 커지는 축을 첫 번째 주성분으로 두고, 그 다음 분산이 두번째로 커지는 축을 두 번째 주성분으로 두는 식으로 주성분은 추출&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;각 주성분은 서로간 90도 직교함&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;공분산 행렬의 고유벡터 개념임&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;위에서 고유값 3일 때 계산되는 &lt;strong&gt;첫 번째 고유벡터가 바로 첫 번째 주성분(PC1)&lt;/strong&gt;이 된다. 즉, $$ \begin{bmatrix} 1 \ 1 \end{bmatrix} $$ 고유벡터가 첫 번째 주성분 축이 된다는 의미임&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;원본 데이터가 있을 경우 먼저 &lt;strong&gt;표준화&lt;/strong&gt;가 진행된다&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;표준화가 되었다고 가정하고, $$ \begin{bmatrix} 70&amp;amp;80 \\ 50&amp;amp;40 \\ 70&amp;amp;90 \end{bmatrix} \begin{bmatrix} 1 \\ 1 \end{bmatrix} $$ 이 계산 되어 최종 $$\begin{bmatrix} 150 \\ 90 \\ 160 \end{bmatrix} $$이 되어 새로운 축으로 반영되는 것이다. 이 축은 국어와 영어점수를 설명하는 &amp;#39;언어능력점수&amp;#39; 정도로 해석해 볼 수 있다. &lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;2차원 좌표평면에서 설명해야 이해가 빠른데, 해당 설명은 &lt;a href=&quot;https://www.youtube.com/watch?v=9kC7ABp4qPs&amp;amp;list=PLalb9l0_6WAqC_ytofaE-Q4SPsqgT3EmJ&amp;amp;index=5&quot;&gt;참고유튜브&lt;/a&gt;를 참조하자&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;고유값이 1일 때 나왔던 주성분 PC2(고유벡터)는 분산의 설명도에 따라 사용할 수도, 안 할 수도 있다 &lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;PC1과 PC2의 상관관계는 0이다(고유값의 계산관계 상 0이 될 수 밖에 없다.) &lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;주성분 분석을 사용할 때&lt;/h2&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;주성분 분석은 언제나 가능한가?&lt;ul&gt;
&lt;li&gt;주성분 분석은 데이터의 이면에 보이지 않는 원인이 있음을 전제&lt;/li&gt;
&lt;li&gt;즉 국어점수와 영어점수를 설명하는 &amp;#39;언어능력&amp;#39;이 있음을 생각하는 것&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;주성분 분석에 적합한 데이터란 무엇인가?&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;구형성 검증(Bartlett&amp;#39;s test of sphericity)&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&amp;quot;상관관계가 0이라면 주성분이 존재할 수 있는가?&amp;quot;를 생각하는 것&lt;/li&gt;
&lt;li&gt;즉 상관관계가 업는 형태라면 주성분 분석을 할 수 없음&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;PCA 실습&lt;/h1&gt;
&lt;hr&gt;
&lt;pre&gt;&lt;code&gt;import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns # seaborn
import warnings
warnings.filterwarnings(&amp;quot;ignore&amp;quot;) # 경고메세지 무시

df = pd.read_excel(&amp;quot;./data/pca_credit_card/card.xls&amp;quot;, header=1).iloc[:,1:]&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;print(df.shape)
df.head(3)&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;(30000, 24)&lt;/code&gt;&lt;/pre&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;LIMIT_BAL&lt;/th&gt;
&lt;th&gt;SEX&lt;/th&gt;
&lt;th&gt;EDUCATION&lt;/th&gt;
&lt;th&gt;MARRIAGE&lt;/th&gt;
&lt;th&gt;AGE&lt;/th&gt;
&lt;th&gt;PAY_0&lt;/th&gt;
&lt;th&gt;PAY_2&lt;/th&gt;
&lt;th&gt;PAY_3&lt;/th&gt;
&lt;th&gt;PAY_4&lt;/th&gt;
&lt;th&gt;PAY_5&lt;/th&gt;
&lt;th&gt;...&lt;/th&gt;
&lt;th&gt;BILL_AMT4&lt;/th&gt;
&lt;th&gt;BILL_AMT5&lt;/th&gt;
&lt;th&gt;BILL_AMT6&lt;/th&gt;
&lt;th&gt;PAY_AMT1&lt;/th&gt;
&lt;th&gt;PAY_AMT2&lt;/th&gt;
&lt;th&gt;PAY_AMT3&lt;/th&gt;
&lt;th&gt;PAY_AMT4&lt;/th&gt;
&lt;th&gt;PAY_AMT5&lt;/th&gt;
&lt;th&gt;PAY_AMT6&lt;/th&gt;
&lt;th&gt;default payment next month&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;&lt;tr&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;20000&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;24&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;-1&lt;/td&gt;
&lt;td&gt;-1&lt;/td&gt;
&lt;td&gt;-2&lt;/td&gt;
&lt;td&gt;...&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;689&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;120000&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;26&lt;/td&gt;
&lt;td&gt;-1&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;...&lt;/td&gt;
&lt;td&gt;3272&lt;/td&gt;
&lt;td&gt;3455&lt;/td&gt;
&lt;td&gt;3261&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;1000&lt;/td&gt;
&lt;td&gt;1000&lt;/td&gt;
&lt;td&gt;1000&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;2000&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;90000&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;34&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;...&lt;/td&gt;
&lt;td&gt;14331&lt;/td&gt;
&lt;td&gt;14948&lt;/td&gt;
&lt;td&gt;15549&lt;/td&gt;
&lt;td&gt;1518&lt;/td&gt;
&lt;td&gt;1500&lt;/td&gt;
&lt;td&gt;1000&lt;/td&gt;
&lt;td&gt;1000&lt;/td&gt;
&lt;td&gt;1000&lt;/td&gt;
&lt;td&gt;5000&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;3 rows × 24 columns&lt;/p&gt;
&lt;p&gt;&lt;code&gt;default payment next month&lt;/code&gt;가 Target 이며 1이면 &amp;quot;다음달 연체&amp;quot;, 0이면 &amp;quot;정상납&amp;quot;임&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;df.rename(columns={&amp;quot;PAY_0&amp;quot;:&amp;quot;PAY_1&amp;quot;, &amp;quot;default payment next month&amp;quot;:&amp;quot;default&amp;quot;}, inplace=True)
y_target = df[&amp;quot;default&amp;quot;]
X_features = df.drop(&amp;quot;default&amp;quot;, axis=1)&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;corr = X_features.corr()
plt.figure(figsize=(14,14))
sns.heatmap(corr, annot=True, fmt=&amp;#39;.1g&amp;#39;)&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/eigen/output_4_1.png&quot; alt=&quot;img&quot;&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;PAY_1 ~ 6까지의 상관도와 BILL_AMT1 ~ 6까지의 상관도가 각각 높음&lt;/li&gt;
&lt;li&gt;PCA로 변환을 시행&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;from sklearn.decomposition import PCA
from sklearn.preprocessing import StandardScaler

# BILL
cols_bill = [&amp;quot;BILL_AMT&amp;quot; + str(i) for i in range(1,7)]
print(&amp;quot;대상 속성명 :&amp;quot;, cols_bill)

# PCA 객체 생성 후 변환
scaler = StandardScaler()
df_cols_scaled = scaler.fit_transform(X_features[cols_bill])
pca = PCA(n_components=2)
pca.fit(df_cols_scaled)
print(&amp;quot;PCA Component 별 변동성 :&amp;quot;, pca.explained_variance_ratio_)&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;대상 속성명 : [&amp;#39;BILL_AMT1&amp;#39;, &amp;#39;BILL_AMT2&amp;#39;, &amp;#39;BILL_AMT3&amp;#39;, &amp;#39;BILL_AMT4&amp;#39;, &amp;#39;BILL_AMT5&amp;#39;, &amp;#39;BILL_AMT6&amp;#39;]
PCA Component 별 변동성 : [0.90555253 0.0509867 ]&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import cross_val_score

rcf = RandomForestClassifier(n_estimators=300, random_state=156)
scores = cross_val_score(rcf, X_features, y_target, scoring=&amp;quot;accuracy&amp;quot;, cv=3)

print(&amp;quot;개별 정확도 :&amp;quot;, scores)
print(&amp;quot;평균정확도:&amp;quot;, np.round(np.mean(scores),3))&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;개별 정확도 : [0.8083 0.8196 0.8232]
평균정확도: 0.817&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;# 원본 데이터 세트에 먼저 StandardScaler
scaler = StandardScaler()
df_scaled = scaler.fit_transform(X_features)

# 6개의 컴포넌트를 가진 PCA 변환 수행 cross_val_score()로 분류 예측 수행
pca = PCA(n_components=6)
df_pca = pca.fit_transform(df_scaled)
scores_pca = cross_val_score(rcf, df_pca, y_target, scoring=&amp;quot;accuracy&amp;quot;, cv=3)

print(&amp;quot;개별 정확도 :&amp;quot;, scores_pca)
print(&amp;quot;평균정확도:&amp;quot;, np.round(np.mean(scores_pca),3))&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;개별 정확도 : [0.7905 0.7976 0.8021]
평균정확도: 0.797&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;# 6개의 변수만으로도 성능의 차이가 크게 없음
pca.explained_variance_ratio_&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;array([0.28448215, 0.17818817, 0.06743307, 0.06401153, 0.04457547,
       0.04161736])&lt;/code&gt;&lt;/pre&gt;&lt;ul&gt;
&lt;li&gt;결론적으로 PCA를 사용할 때는 변수가 많고, X변수 간의 상관관계가 있다 싶을 때 사용한다&lt;/li&gt;
&lt;li&gt;그리고 원본 데이터를 돌려보고 시간이 많이 걸린다 싶을 때 차원 축소를 고려해볼 수 있다&lt;/li&gt;
&lt;li&gt;대신 각 변수의 해석의 문제가 남는다.&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>Data/Machine Learning</category>
      <category>EigenValue란</category>
      <category>EigenVector란</category>
      <category>pca</category>
      <category>PCA 기초</category>
      <category>PCA 설명</category>
      <category>PCA 이해하기</category>
      <category>고유값 정리</category>
      <category>고유값이란?</category>
      <category>고유벡터란?</category>
      <category>주성분분석</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/70</guid>
      <comments>https://bigdatajessie.tistory.com/70#entry70comment</comments>
      <pubDate>Tue, 12 Apr 2022 15:06:55 +0900</pubDate>
    </item>
    <item>
      <title>차원축소(Dimension Reduction) 정리</title>
      <link>https://bigdatajessie.tistory.com/69</link>
      <description>&lt;h1&gt;차원축소(Dimension Reduction)&lt;/h1&gt;
&lt;hr&gt;
&lt;p&gt;변수의 개수를 줄이는 것을 의미함&lt;/p&gt;
&lt;h2&gt;차원축소를 하는 이유&lt;/h2&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;변수가 많으면 다 사용하는 것이 비효율적인 경우&lt;/li&gt;
&lt;li&gt;간혹 변수의 개수보다 관찰값의 개수가 적은 경우&lt;/li&gt;
&lt;li&gt;변수 간 상관관계가 있는 경우&lt;ul&gt;
&lt;li&gt;국어, 영어, 사회 -&amp;gt; 인문영역&lt;/li&gt;
&lt;li&gt;수학, 물리 -&amp;gt; 수리탐구영역&lt;/li&gt;
&lt;li&gt;위와 같이 5개의 변수를 두 가지의 변수로 축소하여 표현 가능&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;차원축소를 하는 방법&lt;/h2&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;상관관계가 높은 변수들을 묶어보기&lt;/li&gt;
&lt;li&gt;공분산행렬을 이용&lt;/li&gt;
&lt;li&gt;Covariance Matrix는 Corrlation Matrix와 유사&lt;/li&gt;
&lt;li&gt;두 변수의 공변(covariate)량과 관계가 있음&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;치원축소를 할 때 주의사항&lt;/h2&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;원 데이터의 분산을 최대한 유지하는 것이 중요(분산이 커지거나 작아지는 것은 지양)&lt;/li&gt;
&lt;li&gt;원 데이터와 다른 새로운 데이터가 생성되는 것&lt;/li&gt;
&lt;li&gt;분석자의 의도대로 축소되지 않거나 해석이 어려운 경우도 발생함&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;공분산과 상관관계&lt;/h1&gt;
&lt;h2&gt;공분산&lt;/h2&gt;
&lt;hr&gt;
&lt;p&gt;공분산 공식은 아래와 같다.&lt;/p&gt;
&lt;p&gt;$$\frac{1}{n-1}\sum_{i=1}^{N}(x_i-\bar{x})(y_i-\bar{y})$$&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;두 변수의 &lt;strong&gt;방향&lt;/strong&gt;을 의미함&lt;/li&gt;
&lt;li&gt;두 변수의 &lt;strong&gt;공분산행렬&lt;/strong&gt;은 다음과 같이 표현된다. 여기서 a는 첫 번째 변수의 분산, b는 공분산, c는 두 번째 변수의 분산으로 표현된다. 만약 국어와 영어점수가 있다고 한다면 a는 국어의 분산, c는 영어의 분산, 그리고 b는 공분산이 된다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;$$\begin{pmatrix}a &amp;amp; b \\ b &amp;amp; c \end{pmatrix}$$&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;분산은 언제나 양수이나 공분산은 &lt;strong&gt;음수&lt;/strong&gt;일 수도 있음&lt;/li&gt;
&lt;li&gt;공분산이 양수라면 X와 Y는 같은 방향으로 움직인다는 의미&lt;/li&gt;
&lt;li&gt;반대로 공분산이 음수라면 X,Y는 음의 상관관계를 갖는다는 의미&lt;/li&gt;
&lt;li&gt;공분산이 0이라면? -&amp;gt; &lt;strong&gt;상관관계가 없다는 뜻&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;다만 상관관계가 얼마나 큰지는 제대로 설명하지 못함&lt;/strong&gt;&lt;br&gt;&lt;a href=&quot;https://www.youtube.com/watch?v=yoqIj8Jvj90&amp;amp;list=PLalb9l0_6WAqC_ytofaE-Q4SPsqgT3EmJ&amp;amp;index=3&quot;&gt;참고유튜브&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;상관관계&lt;/h2&gt;
&lt;hr&gt;
&lt;p&gt;상관계수(p)는 아래와 같이 계산이 된다.&lt;br&gt;$$p = $$ $$Cov(x,y) \over \sqrt{Var(x)*Var(y)}$$&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;공분산을 각각의 분산으로 나누어 &lt;strong&gt;표준화&lt;/strong&gt;한 개념&lt;/li&gt;
&lt;li&gt;상관계수는 -1에서 1 사이의 값을 가지며 각 -1과 1에 근접할수록 상관관계가 있는 것을 판단 가능&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>Data/Machine Learning</category>
      <category>Dimension Reduction 설명</category>
      <category>공분산</category>
      <category>상관관계 공분산 관계</category>
      <category>차원축소</category>
      <category>차원축소 설명</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/69</guid>
      <comments>https://bigdatajessie.tistory.com/69#entry69comment</comments>
      <pubDate>Tue, 12 Apr 2022 15:04:48 +0900</pubDate>
    </item>
    <item>
      <title>Python Matploblib 시각화 기본</title>
      <link>https://bigdatajessie.tistory.com/68</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;Matplotlib를 항상 까먹어서 다시 정리하였음!&lt;/p&gt;
&lt;h1&gt;Matplotlib&lt;/h1&gt;
&lt;pre class=&quot;haskell&quot;&gt;&lt;code&gt;# 패키지
import matplotlib as mpl
import matplotlib.pyplot as plt
import numpy as np&lt;/code&gt;&lt;/pre&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;가장 간단한 예제&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;plt.show()의 역할은 &lt;code&gt;print&lt;/code&gt;의 역할과 동일하다고 보면 된다.&lt;/li&gt;
&lt;li&gt;즉 결과를 Out으로 내는 게 아니라 Print한다는 의미이나, 실질적으로 큰 차이는 없다고 본다.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;r-&lt;/code&gt;을 통해 빨간색 라인 타입을 보일 수 있음&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;lsl&quot;&gt;&lt;code&gt;fig, ax = plt.subplots()  # Create a figure containing a single axes.
ax.plot([1,2,3,4], [1,4,2,3] ,'r-') # 꺾은선
ax.scatter([1,2,3,4], [1,4,2,3]) # 산점도
plt.xlabel(&quot;X Label&quot;) # X 축
plt.ylabel(&quot;Y Label&quot;) # Y 축
ax.set_title(&quot;test&quot;) # 제목
plt.show()&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/mat_plotlib_basic/output_3_0.png&quot; alt=&quot;img&quot; /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Figure의 구성&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;figure는 ax를 담는 그릇이다. 각 ax는 하나의 차트, 또는 좌표평면이라고 보면 될 것 같다.&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;nix&quot;&gt;&lt;code&gt;fig = plt.figure()  # 빈 Figure
fig, ax = plt.subplots()  # 하나의 ax를 가진 Figure
fig, axs = plt.subplots(2, 2)  # 2X2 Grid의 Figure&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;angelscript&quot;&gt;&lt;code&gt;&amp;lt;Figure size 432x288 with 0 Axes&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/mat_plotlib_basic/output_7_1.png&quot; alt=&quot;png&quot; /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Axes&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Ax는 Figure안에 담기는 차트 객체를 의미한다.&lt;/li&gt;
&lt;li&gt;각 Ax는 &lt;code&gt;set_title()&lt;/code&gt;함수를 통해 이름을 정할 수도 있고, &lt;code&gt;set_xlabel()&lt;/code&gt;, &lt;code&gt;set_ylabel()&lt;/code&gt;을 통해 축 이름을 정할 수 있다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Subplots 연습&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Subplot은 현실 시각화 분석에서 가장 많이 쓰이는 함수이다.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;plt.tight_layout()&lt;/code&gt;은 subplot끼리 겹치는 경우 이를 해결해 줄 수 있다.&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;angelscript&quot;&gt;&lt;code&gt;x = np.linspace(0, 10, 6)
y = x ** 2

plt.subplot(1,2,1)
plt.plot(x,y,'r')

plt.subplot(1,2,2)
plt.plot(y,x,'b')&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;fsharp&quot;&gt;&lt;code&gt;[&amp;lt;matplotlib.lines.Line2D at 0x129ae2c3940&amp;gt;]&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/mat_plotlib_basic/output_10_1.png&quot; alt=&quot;png&quot; /&gt;&lt;/p&gt;
&lt;pre class=&quot;nix&quot;&gt;&lt;code&gt;fig, axes = plt.subplots(nrows=1, ncols=2)
plt.tight_layout() # Layout을 화면에 맞춰주는 함수

for ax in axes:
    ax.plot(x,y)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/mat_plotlib_basic/output_11_0.png&quot; alt=&quot;png&quot; /&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;code&gt;axes&lt;/code&gt;를 쳐보면 array 객체임을 알 수 있음, 따라서 위 명령어 처럼 ax를 반복문으로 루프를 돌릴 수 있음&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;ebnf&quot;&gt;&lt;code&gt;axes&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;fsharp&quot;&gt;&lt;code&gt;array([&amp;lt;AxesSubplot:&amp;gt;, &amp;lt;AxesSubplot:&amp;gt;], dtype=object)&lt;/code&gt;&lt;/pre&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Plot function이 받는 데이터 형태&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;nmupy.array 형태를 기본적으로 받음&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ax.scatter&lt;/code&gt;에서 &lt;code&gt;c&lt;/code&gt;인자는 &lt;b&gt;color&lt;/b&gt;를 의미하고 &lt;code&gt;s&lt;/code&gt;인자는 &lt;b&gt;size&lt;/b&gt;를 의미한다.&lt;/li&gt;
&lt;li&gt;그래서 c인자에넌 0~49까지의 사이의 값이 들어가고, size는 d도 마찬가지이다.&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;lua&quot;&gt;&lt;code&gt;b = np.matrix([[1,2],[3,4]])
b_asarray = np.asarray(b)&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;xl&quot;&gt;&lt;code&gt;np.random.seed(19680801)  # seed
data = {'a': np.arange(50),
        'c': np.random.randint(0, 50, 50),
        'd': np.random.randn(50)}
data['b'] = data['a'] + 10 * np.random.randn(50)
data['d'] = np.abs(data['d']) * 100

fig, ax = plt.subplots(figsize=(5, 2.7))
ax.scatter('a', 'b', c='c', s='d', data=data)
ax.set_xlabel('entry a')
ax.set_ylabel('entry b');&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/mat_plotlib_basic/output_16_0.png&quot; alt=&quot;png&quot; /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;코딩 스타일&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;코딩 스타일은 크게 아래와 같이 두 가지로 나눈다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;1. OO 스타일 : fig와 ax를 정확히 정의하고 들어감&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;2. pyplot자동화 : pyplot이 알아서 figure와 ax를 컨트롤하도록 함&lt;/b&gt;&lt;/p&gt;
&lt;pre class=&quot;dockerfile&quot;&gt;&lt;code&gt;# OO 스타일
x = np.linspace(0, 2, 100)  # Sample data.

# Note that even in the OO-style, we use `.pyplot.figure` to create the Figure.
fig, ax = plt.subplots(figsize=(5, 2.7))
ax.plot(x, x, label='linear')  # Plot some data on the axes.
ax.plot(x, x**2, label='quadratic')  # Plot more data on the axes...
ax.plot(x, x**3, label='cubic')  # ... and some more.
ax.set_xlabel('x label')  # Add an x-label to the axes.
ax.set_ylabel('y label')  # Add a y-label to the axes.
ax.set_title(&quot;Simple Plot&quot;)  # Add a title to the axes.
ax.legend();  # Add a legend.&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/mat_plotlib_basic/output_18_0.png&quot; alt=&quot;png&quot; /&gt;&lt;/p&gt;
&lt;pre class=&quot;dockerfile&quot;&gt;&lt;code&gt;# pyplot  스타일
x = np.linspace(0, 2, 100)  # Sample data.

plt.figure(figsize=(5, 2.7))
plt.plot(x, x, label='linear')  # Plot some data on the (implicit) axes.
plt.plot(x, x**2, label='quadratic')  # etc.
plt.plot(x, x**3, label='cubic')
plt.xlabel('x label')
plt.ylabel('y label')
plt.title(&quot;Simple Plot&quot;)
plt.legend();&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/mat_plotlib_basic/output_19_0.png&quot; alt=&quot;png&quot; /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Plot Styling&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;plot에 &lt;code&gt;color&lt;/code&gt;인자와 &lt;code&gt;linewidth&lt;/code&gt;, &lt;code&gt;linestyle&lt;/code&gt;등을 지정해서 스타일링 가능하다.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;alpha&lt;/code&gt;를 통해 투명도도 조정 가능&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;data1, data2, data3, data4 = np.random.randn(4, 100)  

fig, ax = plt.subplots(figsize=(5, 2.7))
x = np.arange(len(data1))
ax.plot(x, np.cumsum(data1), color='blue', linewidth=3, linestyle='--')
l, = ax.plot(x, np.cumsum(data2), color='orange', linewidth=2)
l.set_linestyle(':');&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/mat_plotlib_basic/output_21_0.png&quot; alt=&quot;png&quot; /&gt;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;colors&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;code&gt;facecolor&lt;/code&gt;와 &lt;code&gt;edgecolor&lt;/code&gt;등을 설정 가능합&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;fig, ax = plt.subplots(figsize=(5, 2.7))
ax.scatter(data1, data2, s=50, facecolor='C0', edgecolor='k');&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/mat_plotlib_basic/output_23_0.png&quot; alt=&quot;png&quot; /&gt;&lt;/p&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;fig = plt.figure()

ax = fig.add_axes([0,0,0.5,0.5])
ax.plot(x,y, color='r', marker='o', markersize=10, markerfacecolor=&quot;yellow&quot;, markeredgecolor=&quot;green&quot;) # 색 부여, 마커 부여
plt.show()&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/mat_plotlib_basic/output_24_0.png&quot; alt=&quot;png&quot; /&gt;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;marker&lt;/h3&gt;
&lt;pre class=&quot;dockerfile&quot;&gt;&lt;code&gt;fig, ax = plt.subplots(figsize=(5, 2.7))
ax.plot(data1, 'o', label='data1')
ax.plot(data2, 'd', label='data2')
ax.plot(data3, 'v', label='data3')
ax.plot(data4, 's', label='data4')
ax.legend();&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/mat_plotlib_basic/output_26_0.png&quot; alt=&quot;png&quot; /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Labeling Plots&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;code&gt;fontsize&lt;/code&gt;나 &lt;code&gt;color&lt;/code&gt;이용 가능하다.&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;mu, sigma = 115, 15
x = mu + sigma * np.random.randn(10000)
fig, ax = plt.subplots(figsize=(5, 2.7))
# the histogram of the data
n, bins, patches = ax.hist(x, 50, density=1, facecolor='C0', alpha=0.75)

# ax.set_xlabel('Length [cm]')
ax.set_xlabel('my data', fontsize=14, color='red')
ax.set_ylabel('Probability')
ax.set_title('Aardvark lengths\n (not really)')
ax.text(75, .025, r'$\mu=115,\ \sigma=15$')
ax.axis([55, 175, 0, 0.03])
ax.grid(True);&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/mat_plotlib_basic/output_28_0.png&quot; alt=&quot;png&quot; /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Limit&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;code&gt;set_xlim&lt;/code&gt;, &lt;code&gt;set_ylim&lt;/code&gt;을 통해 X축과 y축의 범위를 정의할 수 있다.&lt;/li&gt;
&lt;li&gt;작게 설정 시, Zoom-In 효과가 있다&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;fig = plt.figure()

ax = fig.add_axes([0,0,0.5,0.5])
ax.plot(x,y, color='r', marker='o', markersize=10, markerfacecolor=&quot;yellow&quot;, markeredgecolor=&quot;green&quot;) # 색 부여, 마커 부여
ax.set_xlim([0,10]) # x limit
ax.set_ylim([0,25]) # y limit
plt.show()&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/mat_plotlib_basic/output_30_0.png&quot; alt=&quot;png&quot; /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Legend(범례)&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;code&gt;loc&lt;/code&gt;인자를 통해 위치를 정할 수 있으며 0일 때 자동 조정이며 0~10까지 숫자에 따라 위치를 조정 가능하다.&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;sas&quot;&gt;&lt;code&gt;fig, ax = plt.subplots(figsize=(5, 2.7))
ax.plot(np.arange(len(data1)), data1, label='data1')
ax.plot(np.arange(len(data2)), data2, label='data2')
ax.plot(np.arange(len(data3)), data3, 'd', label='data3')
# ax.legend(loc=10); #10이면 한 가운데로 옴
ax.legend(loc=(0.76,0.63)) # 숫자로 부여 가능&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;css&quot;&gt;&lt;code&gt;&amp;lt;matplotlib.legend.Legend at 0x129b0480eb0&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/mat_plotlib_basic/output_32_1.png&quot; alt=&quot;png&quot; /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고사이트 : &lt;a href=&quot;https://matplotlib.org/stable/tutorials/introductory/usage.html#types-of-inputs-to-plotting-functions&quot;&gt;https://matplotlib.org/stable/tutorials/introductory/usage.html#types-of-inputs-to-plotting-functions&lt;/a&gt;&lt;/p&gt;</description>
      <category>Data/Python</category>
      <category>figure axes</category>
      <category>matplotlib</category>
      <category>matplotlib 기본</category>
      <category>python matplolib 기본</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/68</guid>
      <comments>https://bigdatajessie.tistory.com/68#entry68comment</comments>
      <pubDate>Sat, 2 Apr 2022 01:04:13 +0900</pubDate>
    </item>
    <item>
      <title>Python seaborn 시각화 기본 정리</title>
      <link>https://bigdatajessie.tistory.com/67</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;Seaborn의 기본 내용 정리한 내용임&lt;/p&gt;
&lt;pre class=&quot;elm&quot;&gt;&lt;code&gt;import seaborn as sns
import matplotlib.pyplot as plt
import warnings
warnings.filterwarnings(&quot;ignore&quot;) # 경고메세지 무시&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;makefile&quot;&gt;&lt;code&gt;# 펭귄데이터
penguins = sns.load_dataset(&quot;penguins&quot;)
penguins.info()
penguins.head()&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;pgsql&quot;&gt;&lt;code&gt;&amp;lt;class 'pandas.core.frame.DataFrame'&amp;gt;
RangeIndex: 344 entries, 0 to 343
Data columns (total 7 columns):
 #   Column             Non-Null Count  Dtype  
---  ------             --------------  -----  
 0   species            344 non-null    object 
 1   island             344 non-null    object 
 2   bill_length_mm     342 non-null    float64
 3   bill_depth_mm      342 non-null    float64
 4   flipper_length_mm  342 non-null    float64
 5   body_mass_g        342 non-null    float64
 6   sex                333 non-null    object 
dtypes: float64(4), object(3)
memory usage: 18.9+ KB&lt;/code&gt;&lt;/pre&gt;
&lt;div&gt;
&lt;table class=&quot;dataframe&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr style=&quot;text-align: right;&quot;&gt;
&lt;th&gt;&amp;nbsp;&lt;/th&gt;
&lt;th&gt;species&lt;/th&gt;
&lt;th&gt;island&lt;/th&gt;
&lt;th&gt;bill_length_mm&lt;/th&gt;
&lt;th&gt;bill_depth_mm&lt;/th&gt;
&lt;th&gt;flipper_length_mm&lt;/th&gt;
&lt;th&gt;body_mass_g&lt;/th&gt;
&lt;th&gt;sex&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;th&gt;0&lt;/th&gt;
&lt;td&gt;Adelie&lt;/td&gt;
&lt;td&gt;Torgersen&lt;/td&gt;
&lt;td&gt;39.1&lt;/td&gt;
&lt;td&gt;18.7&lt;/td&gt;
&lt;td&gt;181.0&lt;/td&gt;
&lt;td&gt;3750.0&lt;/td&gt;
&lt;td&gt;Male&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;1&lt;/th&gt;
&lt;td&gt;Adelie&lt;/td&gt;
&lt;td&gt;Torgersen&lt;/td&gt;
&lt;td&gt;39.5&lt;/td&gt;
&lt;td&gt;17.4&lt;/td&gt;
&lt;td&gt;186.0&lt;/td&gt;
&lt;td&gt;3800.0&lt;/td&gt;
&lt;td&gt;Female&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;2&lt;/th&gt;
&lt;td&gt;Adelie&lt;/td&gt;
&lt;td&gt;Torgersen&lt;/td&gt;
&lt;td&gt;40.3&lt;/td&gt;
&lt;td&gt;18.0&lt;/td&gt;
&lt;td&gt;195.0&lt;/td&gt;
&lt;td&gt;3250.0&lt;/td&gt;
&lt;td&gt;Female&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;3&lt;/th&gt;
&lt;td&gt;Adelie&lt;/td&gt;
&lt;td&gt;Torgersen&lt;/td&gt;
&lt;td&gt;NaN&lt;/td&gt;
&lt;td&gt;NaN&lt;/td&gt;
&lt;td&gt;NaN&lt;/td&gt;
&lt;td&gt;NaN&lt;/td&gt;
&lt;td&gt;NaN&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;4&lt;/th&gt;
&lt;td&gt;Adelie&lt;/td&gt;
&lt;td&gt;Torgersen&lt;/td&gt;
&lt;td&gt;36.7&lt;/td&gt;
&lt;td&gt;19.3&lt;/td&gt;
&lt;td&gt;193.0&lt;/td&gt;
&lt;td&gt;3450.0&lt;/td&gt;
&lt;td&gt;Female&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;#히스토그램
sns.histplot(data=penguins, x=&quot;flipper_length_mm&quot;, hue=&quot;species&quot;, multiple=&quot;stack&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;&amp;lt;AxesSubplot:xlabel='flipper_length_mm', ylabel='Count'&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/seaborn_basic/output_2_1.png&quot; alt=&quot;img&quot; /&gt;&lt;/p&gt;
&lt;!-- ![img](../assets/img/seaborn_basic/output_2_1.png) --&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;# kernel density estimation
sns.kdeplot(data=penguins, x=&quot;flipper_length_mm&quot;, hue=&quot;species&quot;, multiple=&quot;stack&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;&amp;lt;AxesSubplot:xlabel='flipper_length_mm', ylabel='Density'&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/seaborn_basic/output_3_1.png&quot; alt=&quot;img&quot; /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Figure Level vs Axes Level Functions&lt;/h2&gt;
&lt;ol style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;axes-level는 &lt;code&gt;matplotlib.pyplot.axes&lt;/code&gt;를 기준으로 만들어지고&lt;/li&gt;
&lt;li&gt;Figure-level은 &lt;code&gt;FacetGrid&lt;/code&gt;를 기준으로 만들어진다.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Distribution Plots&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;distplot&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;분포 확인&lt;/li&gt;
&lt;li&gt;kde차트와 히스토그램 확인가능&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;sns.distplot(penguins[&quot;flipper_length_mm&quot;], bins=40)
# kde=False를 하면 kde차트는 사라짐&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;delphi&quot;&gt;&lt;code&gt;C:\Users\Jessie\anaconda3\lib\site-packages\seaborn\distributions.py:2619: FutureWarning: `distplot` is a deprecated function and will be removed in a future version. Please adapt your code to use either `displot` (a figure-level function with similar flexibility) or `histplot` (an axes-level function for histograms).
  warnings.warn(msg, FutureWarning)





&amp;lt;AxesSubplot:xlabel='flipper_length_mm', ylabel='Density'&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/seaborn_basic/output_8_2.png&quot; alt=&quot;img&quot; /&gt;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;jointplot&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Scatterplot을 기본으로 각 축의 분포 확인 가능&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;cpp&quot;&gt;&lt;code&gt;sns.jointplot(x=&quot;flipper_length_mm&quot;,y=&quot;bill_length_mm&quot;,data=penguins, hue=&quot;species&quot;)
# hue=&quot;species&quot; - 색반환
# kind=&quot;hex&quot; - 육각형 모양으로 반환
# kind=&quot;reg&quot; - Regression plot
# kind=&quot;kde&quot;  - 등고선&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;css&quot;&gt;&lt;code&gt;&amp;lt;seaborn.axisgrid.JointGrid at 0x165bc527550&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/seaborn_basic/output_10_1.png&quot; alt=&quot;img&quot; /&gt;&lt;/p&gt;
&lt;pre class=&quot;gml&quot;&gt;&lt;code&gt;sns.jointplot(x=&quot;flipper_length_mm&quot;,y=&quot;bill_length_mm&quot;,data=penguins, kind=&quot;reg&quot; )&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;css&quot;&gt;&lt;code&gt;&amp;lt;seaborn.axisgrid.JointGrid at 0x165bc4fe6d0&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/seaborn_basic/output_11_1.png&quot; alt=&quot;img&quot; /&gt;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;pairplot&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;모든 Numeric 변수에 대하여 Scatter plot과 분포도 그림&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;sns.pairplot(data=penguins, hue=&quot;species&quot;, palette=&quot;coolwarm&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;css&quot;&gt;&lt;code&gt;&amp;lt;seaborn.axisgrid.PairGrid at 0x165bf0f27c0&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/seaborn_basic/output_13_1.png&quot; alt=&quot;img&quot; /&gt;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;rugplot&lt;/h3&gt;
&lt;pre class=&quot;css&quot;&gt;&lt;code&gt;sns.rugplot(penguins[&quot;flipper_length_mm&quot;])&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;&amp;lt;AxesSubplot:xlabel='flipper_length_mm'&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/seaborn_basic/output_15_1.png&quot; alt=&quot;img&quot; /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Categoricla Plots&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;barplot&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;code&gt;estimator&lt;/code&gt;인자는 Barplot의 y축을 계량하는 기준을 의미하며 default값은 &lt;b&gt;mean&lt;/b&gt;이다.&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;import numpy as np
sns.barplot(data=penguins, x=&quot;species&quot;, y=&quot;flipper_length_mm&quot;, estimator=np.std) # 표준편차&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;&amp;lt;AxesSubplot:xlabel='species', ylabel='flipper_length_mm'&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/seaborn_basic/output_18_1.png&quot; alt=&quot;img&quot; /&gt;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;countplot&lt;/h3&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;sns.countplot(data=penguins, x=&quot;species&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;&amp;lt;AxesSubplot:xlabel='species', ylabel='count'&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/seaborn_basic/output_20_1.png&quot; alt=&quot;img&quot; /&gt;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;boxplot&lt;/h3&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;sns.boxplot(x=&quot;species&quot;,y=&quot;bill_length_mm&quot;,data=penguins, hue=&quot;sex&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;&amp;lt;AxesSubplot:xlabel='species', ylabel='bill_length_mm'&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/seaborn_basic/output_22_1.png&quot; alt=&quot;img&quot; /&gt;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;viloin plot&lt;/h3&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;sns.violinplot(x=&quot;species&quot;,y=&quot;bill_length_mm&quot;,data=penguins, hue=&quot;sex&quot;, split=True)&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;&amp;lt;AxesSubplot:xlabel='species', ylabel='bill_length_mm'&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/seaborn_basic/output_24_1.png&quot; alt=&quot;img&quot; /&gt;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;stripplot&lt;/h3&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;sns.stripplot(x=&quot;species&quot;,y=&quot;bill_length_mm&quot;,data=penguins, jitter=True, hue=&quot;sex&quot;, split=True)&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;crystal&quot;&gt;&lt;code&gt;C:\Users\Jessie\anaconda3\lib\site-packages\seaborn\categorical.py:2805: UserWarning: The `split` parameter has been renamed to `dodge`.
  warnings.warn(msg, UserWarning)





&amp;lt;AxesSubplot:xlabel='species', ylabel='bill_length_mm'&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/seaborn_basic/output_26_2.png&quot; alt=&quot;img&quot; /&gt;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;swarmplot&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;stripplot과 violing plot의 조합으로 볼 수 있음&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;gml&quot;&gt;&lt;code&gt;sns.swarmplot(x=&quot;species&quot;,y=&quot;bill_length_mm&quot;,data=penguins)&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;&amp;lt;AxesSubplot:xlabel='species', ylabel='bill_length_mm'&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/seaborn_basic/output_28_1.png&quot; alt=&quot;img&quot; /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Matrix chart&lt;/h2&gt;
&lt;pre class=&quot;ini&quot;&gt;&lt;code&gt;tc = penguins.corr()&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Heatmap&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;code&gt;annot=Ture&lt;/code&gt; 인자를 통해서 히트맵에 해당하는 셀의 값을 노출할 수 있다.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cmap&lt;/code&gt;을 통해 컬러맵 부여 가능&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;sns.heatmap(tc,annot=True, cmap=&quot;coolwarm&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;apache&quot;&gt;&lt;code&gt;&amp;lt;AxesSubplot:&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/seaborn_basic/output_32_1.png&quot; alt=&quot;img&quot; /&gt;&lt;/p&gt;
&lt;pre class=&quot;subunit&quot;&gt;&lt;code&gt;test = penguins.pivot_table(index=&quot;species&quot;, columns=&quot;island&quot;, values=&quot;bill_length_mm&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;sns.heatmap(test, cmap=&quot;magma&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;&amp;lt;AxesSubplot:xlabel='island', ylabel='species'&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/seaborn_basic/output_34_1.png&quot; alt=&quot;img&quot; /&gt;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Clustermap&lt;/h3&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;sns.clustermap(tc, cmap=&quot;coolwarm&quot;, standard_scale=1, annot=True)&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;css&quot;&gt;&lt;code&gt;&amp;lt;seaborn.matrix.ClusterGrid at 0x165c2a16dc0&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/seaborn_basic/output_36_1.png&quot; alt=&quot;img&quot; /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Grid&lt;/h2&gt;
&lt;pre class=&quot;makefile&quot;&gt;&lt;code&gt;iris = sns.load_dataset(&quot;iris&quot;)
iris.head()&lt;/code&gt;&lt;/pre&gt;
&lt;div&gt;
&lt;table class=&quot;dataframe&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr style=&quot;text-align: right;&quot;&gt;
&lt;th&gt;&amp;nbsp;&lt;/th&gt;
&lt;th&gt;sepal_length&lt;/th&gt;
&lt;th&gt;sepal_width&lt;/th&gt;
&lt;th&gt;petal_length&lt;/th&gt;
&lt;th&gt;petal_width&lt;/th&gt;
&lt;th&gt;species&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;th&gt;0&lt;/th&gt;
&lt;td&gt;5.1&lt;/td&gt;
&lt;td&gt;3.5&lt;/td&gt;
&lt;td&gt;1.4&lt;/td&gt;
&lt;td&gt;0.2&lt;/td&gt;
&lt;td&gt;setosa&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;1&lt;/th&gt;
&lt;td&gt;4.9&lt;/td&gt;
&lt;td&gt;3.0&lt;/td&gt;
&lt;td&gt;1.4&lt;/td&gt;
&lt;td&gt;0.2&lt;/td&gt;
&lt;td&gt;setosa&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;2&lt;/th&gt;
&lt;td&gt;4.7&lt;/td&gt;
&lt;td&gt;3.2&lt;/td&gt;
&lt;td&gt;1.3&lt;/td&gt;
&lt;td&gt;0.2&lt;/td&gt;
&lt;td&gt;setosa&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;3&lt;/th&gt;
&lt;td&gt;4.6&lt;/td&gt;
&lt;td&gt;3.1&lt;/td&gt;
&lt;td&gt;1.5&lt;/td&gt;
&lt;td&gt;0.2&lt;/td&gt;
&lt;td&gt;setosa&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;4&lt;/th&gt;
&lt;td&gt;5.0&lt;/td&gt;
&lt;td&gt;3.6&lt;/td&gt;
&lt;td&gt;1.4&lt;/td&gt;
&lt;td&gt;0.2&lt;/td&gt;
&lt;td&gt;setosa&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;PairGrid&lt;/h3&gt;
&lt;pre class=&quot;reasonml&quot;&gt;&lt;code&gt;g = sns.PairGrid(iris)
# g.map(plt.scatter) # scatter
g.map_diag(sns.distplot) # 사선에는 distplot
g.map_upper(plt.scatter) # 사선 상단에는 scatterplot
g.map_lower(sns.kdeplot) # 사선 아래에는 kdeplot&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;css&quot;&gt;&lt;code&gt;&amp;lt;seaborn.axisgrid.PairGrid at 0x165c7fc8790&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/seaborn_basic/output_40_1.png&quot; alt=&quot;img&quot; /&gt;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;FacetGrid&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Categorical한 변수를 기준으로 그래프를 쪼개서 볼 수 있음&lt;/li&gt;
&lt;li&gt;Trellis(격자구조)의 개념이라고 생각하면 좋음&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;makefile&quot;&gt;&lt;code&gt;tips = sns.load_dataset(&quot;tips&quot;)
tips.head()&lt;/code&gt;&lt;/pre&gt;
&lt;div&gt;
&lt;table class=&quot;dataframe&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr style=&quot;text-align: right;&quot;&gt;
&lt;th&gt;&amp;nbsp;&lt;/th&gt;
&lt;th&gt;total_bill&lt;/th&gt;
&lt;th&gt;tip&lt;/th&gt;
&lt;th&gt;sex&lt;/th&gt;
&lt;th&gt;smoker&lt;/th&gt;
&lt;th&gt;day&lt;/th&gt;
&lt;th&gt;time&lt;/th&gt;
&lt;th&gt;size&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;th&gt;0&lt;/th&gt;
&lt;td&gt;16.99&lt;/td&gt;
&lt;td&gt;1.01&lt;/td&gt;
&lt;td&gt;Female&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Sun&lt;/td&gt;
&lt;td&gt;Dinner&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;1&lt;/th&gt;
&lt;td&gt;10.34&lt;/td&gt;
&lt;td&gt;1.66&lt;/td&gt;
&lt;td&gt;Male&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Sun&lt;/td&gt;
&lt;td&gt;Dinner&lt;/td&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;2&lt;/th&gt;
&lt;td&gt;21.01&lt;/td&gt;
&lt;td&gt;3.50&lt;/td&gt;
&lt;td&gt;Male&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Sun&lt;/td&gt;
&lt;td&gt;Dinner&lt;/td&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;3&lt;/th&gt;
&lt;td&gt;23.68&lt;/td&gt;
&lt;td&gt;3.31&lt;/td&gt;
&lt;td&gt;Male&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Sun&lt;/td&gt;
&lt;td&gt;Dinner&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;4&lt;/th&gt;
&lt;td&gt;24.59&lt;/td&gt;
&lt;td&gt;3.61&lt;/td&gt;
&lt;td&gt;Female&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Sun&lt;/td&gt;
&lt;td&gt;Dinner&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;g = sns.FacetGrid(data=tips, col=&quot;time&quot;, row=&quot;smoker&quot;)
# g.map(sns.distplot, &quot;total_bill&quot;)
g.map(plt.scatter, &quot;total_bill&quot;, &quot;tip&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;css&quot;&gt;&lt;code&gt;&amp;lt;seaborn.axisgrid.FacetGrid at 0x165ca168850&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/seaborn_basic/output_43_1.png&quot; alt=&quot;img&quot; /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;regplot&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;lmplot&lt;/h3&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;sns.lmplot(x=&quot;total_bill&quot;, y=&quot;tip&quot;,data=tips, hue=&quot;sex&quot;, markers=['o','v'])&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;css&quot;&gt;&lt;code&gt;&amp;lt;seaborn.axisgrid.FacetGrid at 0x165ca196df0&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/seaborn_basic/output_46_1.png&quot; alt=&quot;img&quot; /&gt;&lt;/p&gt;
&lt;pre class=&quot;gml&quot;&gt;&lt;code&gt;sns.lmplot(x=&quot;total_bill&quot;, y=&quot;tip&quot;,data=tips,col=&quot;sex&quot;,row=&quot;time&quot;) # auto FacetGrid&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;css&quot;&gt;&lt;code&gt;&amp;lt;seaborn.axisgrid.FacetGrid at 0x165ca32e400&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/seaborn_basic/output_47_1.png&quot; alt=&quot;img&quot; /&gt;&lt;/p&gt;</description>
      <category>Data/Python</category>
      <category>Pyhon</category>
      <category>Seaborn</category>
      <category>seaborn tutorial</category>
      <category>seaborn 기본</category>
      <category>seaborn 기초</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/67</guid>
      <comments>https://bigdatajessie.tistory.com/67#entry67comment</comments>
      <pubDate>Sat, 2 Apr 2022 00:57:33 +0900</pubDate>
    </item>
    <item>
      <title>Rigdge와 Lasso</title>
      <link>https://bigdatajessie.tistory.com/66</link>
      <description>&lt;h2&gt;Ridge 회귀 (L2 규제)&lt;/h2&gt;
&lt;hr&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/ridge_lasso/img1.png&quot; alt=&quot;img&quot;&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;선형 모델이며 최소적합법을 사용&lt;/li&gt;
&lt;li&gt;일반 회귀와 다른 점은 &lt;strong&gt;가중치(w 또는 β)&lt;/strong&gt; 의 절대값을 최대한 작게 함&lt;/li&gt;
&lt;li&gt;즉 기울기를 0으로 만듬&lt;/li&gt;
&lt;li&gt;이렇게 하는 이유는 &lt;strong&gt;과대적합&lt;/strong&gt;이 생기지 않도록 모델을 강제로 제한함을 의미&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Lasso 회귀 (L1 규제)&lt;/h2&gt;
&lt;hr&gt;
&lt;p&gt;&lt;img src=&quot;https://sangminje.github.io/assets/img/ridge_lasso/img2.png&quot; alt=&quot;img&quot;&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ridge에서와 마찬가지로 계수를 0에 가깝게 제한하는 것은 동일함&lt;/li&gt;
&lt;li&gt;하지만 정말로 0인 계수가 생기기도 함. 즉 제외되는 계수도 발생&lt;/li&gt;
&lt;li&gt;이는 자동으로 특성이 선택된다고 볼 수 있으며 가장 중요한 특성이 무엇인지 드러내 준다고 생각하면 됨&lt;/li&gt;
&lt;li&gt;간혹 Lasso를 이용하면 과속적합이 발생하기도 하는데, 이는 너무 많은 Feature를 Drop하여 모델을 못 쓰게 만드는 경우이다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;무엇을 사용할 것인가?&lt;/h2&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;일반적으로 Ridge 회귀를 분석에서 선호하는 편&lt;/li&gt;
&lt;li&gt;다만 분석하기 쉬운 모델을 고를 경우 Lasso가 더 좋은 선택이 될 수 있음&lt;/li&gt;
&lt;li&gt;Lasso와 Ridge의 패널티를 결합한 &lt;strong&gt;ElasticNet&lt;/strong&gt;이라는 것도 있음. 최상의 결과를 내기도 하지만 두 개의 매개변수를 조정해야 함.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;참고 사이트&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://rk1993.tistory.com/entry/Ridge-regression%EC%99%80-Lasso-regression-%EC%89%BD%EA%B2%8C-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0&quot;&gt;Ridge와 Lasso 쉽게 이해하기&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://modulabs-biomedical.github.io/Bias_vs_Variance&quot;&gt;Bias vs Variance&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>Data/Machine Learning</category>
      <category>Lasso</category>
      <category>RIDGE</category>
      <category>선형회귀</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/66</guid>
      <comments>https://bigdatajessie.tistory.com/66#entry66comment</comments>
      <pubDate>Thu, 31 Mar 2022 21:55:13 +0900</pubDate>
    </item>
    <item>
      <title>Tistory와 Git Hub Page 동시 운영 결정</title>
      <link>https://bigdatajessie.tistory.com/65</link>
      <description>&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Git hub 블로그를 운영한지 1년이 지난 지금, 장단점을 돌아보고 티스토리까지 운영하게 되는 계기를 함께 서술한다.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&amp;nbsp;목차
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;#%EA%B9%83%ED%97%99%EB%B8%94%EB%A1%9C%EA%B7%B8-%EC%9E%A5%EC%A0%90&quot;&gt;1. 깃헙블로그 장점&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#%EA%B9%83%ED%97%99%EB%B8%94%EB%A1%9C%EA%B7%B8-%EB%8B%A8%EC%A0%90&quot;&gt;2. 깃헙블로그 단점&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#%ED%8B%B0%EC%8A%A4%ED%86%A0%EB%A6%AC-%EB%B3%91%ED%96%89-%EC%9A%B4%EC%98%81&quot;&gt;3. 티스토리 병행 운영&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;깃헙블로그 장점&lt;/h2&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;마크다운 친숙성&lt;/b&gt;&lt;br /&gt;깃헙 블로그를 운영하는 동안 깃헙의 메커니즘을 많이 익혔다. 더불어서 마크다운 언어를 자유롭게 사용하게 되었는데, 보고서를 만들거나 문서를 정리할 때, 개발 블로그를 만들 때 큰 도움이 됐다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;개발친화적 느낌&lt;/b&gt;&lt;br /&gt;사실 깃헙 블로그는 멋지다. 일정 플랫폼을 벗어나서 블로그와 홈페이지를 구성해보고 그것을 유지하는 경험 자체도 근사하다. 그리고 포트폴리오로써 이보다 제시하기 좋은 점은 없다고 본다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;깃헙블로그 단점&lt;/h2&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;유지관리가 쉽지 않다&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;_VS Code*_를 켜야하고 깃헙으 스테이지에 올리고, 푸시하고 이를 관리하는 과정이 까다롭다. 특히 이미지와 마크다운을 맵핑시키는 부분이 꽤 귀찮아서 글을 자주 쓰지 않게 되는 것 같다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;방문자 통계의 어려움&lt;/b&gt;&lt;br /&gt;방문자 통계를 내고 싶었는데, 결과적으로 구글 애널리틱스와 끝내 연결되지 않았다. 이유는 잘 모른다. 시키는대로 했지만, 결과는 나오지 않으니 답답할 수 밖에. 완성되지 않은 상태에서 하나하나 만든 다는 것은 어려움이 따르는 것 같다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;결국엔 하나의 스킨테마에 갇힌다&lt;/b&gt;&lt;br /&gt;내가 웹개발자가 아닌 이상, 지금 유지하는 정도 이상의 스킨 수준을 관리하는 것은 불가능하다. 너무 귀찮은 일이 될 것 같다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;티스토리 병행 운영&lt;/h2&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;고민 끝에 두 개의 블로그를 병행운영 하기로 했다. 고로 똑같은 내용의 깃헙 블로그를 발견한다면, 그것은 바로 나이다..&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;티스토리의 마크다운 지원&lt;/b&gt;&lt;br /&gt;티스토리가 마크다운을 지원한다. 내가 모든 깃헙 문서를 마크다운으로 작성하는만큼 이상의 호환성이 높아질 것이라고 생각한다. 물론 이미지를 다시 넣는 작업은 조금 귀찮은 일이 되겠지만, 드는 노력에 비해 티스토리 노출이 상당히 좋은 편&lt;/li&gt;
&lt;li&gt;&lt;b&gt;가시적인 트래픽&lt;/b&gt;&lt;br /&gt;티스토리는 자체적으로 통계 기능을 지원한다. 1년 넘게 관리를 하지 않았는데도 불구하고 꾸준하게 50 ~ 100명의 트래픽을 유지하고 있다. 즉 내가 좀 더 관심을 갖고 관리를 하면 더 좋은 트래픽을 일으킬 수 있을 것이라 판단했다.&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>Other Topics/제씨생각</category>
      <category>tistory블로그</category>
      <category>깃헙블로그</category>
      <category>병행</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/65</guid>
      <comments>https://bigdatajessie.tistory.com/65#entry65comment</comments>
      <pubDate>Thu, 31 Mar 2022 14:13:25 +0900</pubDate>
    </item>
    <item>
      <title>EIS가 번번히 실패하는 이유</title>
      <link>https://bigdatajessie.tistory.com/64</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;개요&lt;/h2&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;EIS를 기꺼이 만들었으나 사용하지 않는 기업과 그 이유에 대하여 생각해보았습니다.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;목차&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;원인&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;#%EC%9E%84%EC%9B%90%EB%93%A4%EC%9D%80-%EA%B2%BD%EC%98%81%EC%A0%95%EB%B3%B4%EC%97%90-%EC%83%9D%EA%B0%81%EB%B3%B4%EB%8B%A4-%EA%B4%80%EC%8B%AC%EC%9D%B4-%EC%97%86%EB%8B%A4&quot;&gt;1. 임원들은 경영정보에 생각보다 관심이 없다&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#%EB%8D%B0%EC%9D%B4%ED%84%B0%EA%B0%80-%EB%BB%94%ED%95%98%EB%8B%A4&quot;&gt;2. 데이터가 뻔하다&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#eis%EA%B0%80-%EC%97%85%EC%9D%98-%ED%95%B5%EC%8B%AC%EC%9D%B4-%EC%95%84%EB%8B%88%EB%8B%A4&quot;&gt;3. EIS가 업의 핵심이 아니다&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;해결책&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;#%EC%B5%9C%EB%8C%80%ED%95%9C-%EA%B0%84%EB%8B%A8%ED%95%98%EA%B2%8C&quot;&gt;1. 최대한 간단하게&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#%EC%97%85%EB%AC%B4%EC%99%80-%EA%B4%80%EB%A0%A8%EB%90%9C-%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%A7%8C&quot;&gt;2. 업무와 관련된 데이터만&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#%EA%B0%80%EA%B8%89%EC%A0%81-%EB%A7%8C%EB%93%A4%EC%A7%80-%EB%A7%90%EC%9E%90&quot;&gt;3. 가급적 만들지 말자..&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;몇 년간 &lt;b&gt;QlikView / Sense&lt;/b&gt; 를 사용해서 여러 기업의 EIS와 대시보드를 구축하고 나서 가장 크게 느낀 점은, 결국 애써서 만들었으나 그 효용이 낮다라는 생각이었습니다. 긴 시간 그 이유를 조금 생각해봤고 아래와 같이 정리해볼 수 있다고 생각합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;임원들은 경영정보에 생각보다 관심이 없다&lt;/h2&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;내 일이 아닌 것 같아...&lt;/b&gt;&lt;br /&gt;경영데이터가 사람들의 업무에 크리티컬하게 영향을 주지 않습니다. 즉 보면 좋고 안보면 그만인 그래프들에 지나지 않게 됩니다. 그래서 그냥 경영데이터가 보기좋게 제시되어서 &lt;b&gt;보고용으로 적합할 뿐&lt;/b&gt;, 그 이상의 역할은 하지 않게 되는 것 같습니다. 실제로 많은 기업에서 사용자는 Open 이후로 천천히 우하향곡선을 그리게 되죠.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;데이터가 뻔하다.&lt;/h2&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;이미 보고 받고 있는 데이터인데?&lt;/b&gt;&lt;br /&gt;경영데이터는 보통 ERP에서 사용하고 있는 데이터를 집계하여 시각화합니다. 그렇게 때문에 데이터 자체에서 새로울 것은 잘 없겠죠. 다만 비즈니스 로직에 따라서 필요한 지표들이 더 추가되고편리하게 볼 수 있다는 장점이 있을 수 있습니다. 하지만 이러한 편의를 위해서 들여야 하는 노력에 비해, 사용빈도가 현저히 낮습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;데이터가 변하는 게 없잖아?&lt;/b&gt;&lt;br /&gt;데이터의 집계에는 시간이 걸립니다. 일 단위로 집계되는 데이터를 본다면 실시간을 원하고, 결산을 기준으로 데이터를 본다면 일 데이터를 원하는 사용자도 생깁니다. 이럴 경우 데이터의 신선도에 대한 요구가 지속적으로 발생합니다. 이렇게 신선도를 잃게 되었다고 생각되는 데이터는 지나간 실적에 대한 보고로써의 역할만 맡게 되는 것 같습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;그래서 원인이 뭐야?&lt;/b&gt;&lt;br /&gt;BI의 딜레마는 낮은 수준으로 데이터를 묶을수록 정보 전달성이 떨어지며, 높은 수준으로 묶을수록 데이터의 원인을 트래킹하기 어렵습니다. 이 중 EIS는 후자에 가깝습니다. 때문에 데이터를 보고 의문이 생겨도 그 하위로 내려가지 못하고, 결국 팀 내의 현업에게 묻게 됩니다. 즉, Drill-Down 되지 않게 되면 이 역시 EIS가 실패하는 원인이 되는 것으로 보입니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;EIS가 업의 핵심이 아니다.&lt;/h2&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;나 진짜 바쁘고, 이것까지 볼 시간이 없다.&lt;/b&gt;&lt;br /&gt;EIS 정보를 모른다고 해서 자신의 업무에 영향을 받지 않습니다. 그렇다면 바쁜 와중에는 굳이 전체 경영정보를 볼 이유가 없겠죠. 자신의 업무로도 이미, 충분히 각자 바쁜 시간을 보내고 있을테니까요. 이건 어떤 EIS를 구축하느냐의 문제도 있지만, EIS가 가진 본질적인 한계처럼 느껴지기도 합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;EIS 없어도 잘 돌아갔어&lt;/b&gt;&lt;br /&gt;사실입니다. 이전에 잘 돌아가던 업무의 패턴이 있고 EIS는 편의 내지는 지원의 개념으로 현업들의 업무에 끼어들 뿐이죠. 거창한 의미를 둘 필요가 없다는 뜻입니다. 그래서 저는 EIS를 힘주어 만들 필요가 없다고 생각한다. 반대로 Micro한 자신의 업무단위까지 관련이 있다면, (예를 들어 생산라인 오류 감지 등) 시키지 않아도 그것을 보게 되지 않을까요?&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 식으로 EIS는 애써 기업에서 만들지만 쉽게 사장됩니다.그러면 어떻게 반복되는 EIS의 실패를 막을 수 있을까요? 저는 이렇게 생각합니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;최대한 간단하게&lt;/h2&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;핵심지표만 간추리자&lt;/b&gt;&lt;br /&gt;EIS 안에서는 핵심지표만 과감하게 최소한의 노력으로 핵심지표만 간추려야 한다고 봅니다. 굳이 거대하고 무겁게 만들어봐야 사용하지 않을 확률이 놓기 때문이죠. 그래도 임원들이 보기 때문에 대충 만들기 조금 그렇다고 생각하겠지만, 이건 문화를 바꾸는 게 급선무인 것 같습니다. 중요하게 생각하는 분석지표는 수시로 바뀔 수 있으며 더군다나 요즘같이 빠르게 변하는 시대에는 더더욱이나 그렇습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;필요에 의해 추가하자&lt;/b&gt;&lt;br /&gt;다른 개발이나 프로젝트, 분석도 마찬가지이지만 EIS에서도 똑같이 적용되는 것 같습니다. 가장 작게 필요한 부분만 시작하고, 차후 현업의 필요를 받아들여서 확장해나가는 것이 더욱 중요해보입니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;업무와 관련된 데이터만&lt;/h2&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;업과 직결된 지표들&lt;/b&gt;&lt;br /&gt;그나마 만들어진 EIS에서 사람들이 보는 지표는, 매출액, 영업이익과 같이 본인들의 평가와 직결된 정보들이었습니다. 그런 핵심 정보들과 더불어서 재고관리팀이라면 재고 현황 데이터를, 생산관리팀이라면 생산관리 데이터를 볼 수 있도록 팀마다 화면을 분리해야 합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;진짜 EIS가 필요한 것인지요..&lt;/b&gt;&lt;br /&gt;EIS가 필요한 것인지 스스로 자문하며 진단할 필요가 있습니다. 예를 들어서 B2B 기업이고 고객사가 한정적이며, 고객사에 대한 정보를 정리하지 않는 기업의 경우, 데이터를 보며 얻을 수 있는 Action이 발생하지 않죠.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;가급적 만들지 말자..&lt;/h2&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;어차피 쓰지도 않는 거..&lt;/b&gt;&lt;br /&gt;각고의 노력을 다해 만들어봐야 EIS는 높은 확률로 사장됩니다.그래서 그 때 그 때마다 데이터를 다르게 볼 수 있는 보고서와 좀 더 데이터분석에 가까운 플랫폼을 제공해주는 게 더 좋아보입니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;현업에게도 교육이 필요하다.&lt;/b&gt;&lt;br /&gt;데이터를 다루고 그것을 어떻게 가공해야 하는지에 대한 기본적인 지식이 현업에게도 필요합니다. 그들이 유연하게 데이터에 접근하고 데이터를 가공할 수 있을 때 비로소 유연한 데이터 분석과 문화가 형성이 된다고 생각합니다.&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>Other Topics/제씨생각</category>
      <category>EIS</category>
      <category>경영정보시스템</category>
      <category>시각화</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/64</guid>
      <comments>https://bigdatajessie.tistory.com/64#entry64comment</comments>
      <pubDate>Thu, 31 Mar 2022 10:36:06 +0900</pubDate>
    </item>
    <item>
      <title>R) 정규표현식 마스터하기</title>
      <link>https://bigdatajessie.tistory.com/63</link>
      <description>&lt;p&gt;&lt;b&gt;&lt;span&gt;도움이 되는 사이트&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;엘리의 드림코딩 - 정교표현식(&lt;a href=&quot;https://www.youtube.com/watch?v=t3M6toIflyQ&quot;&gt;https://www.youtube.com/watch?v=t3M6toIflyQ&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;정규표현식 연습사이트(&lt;a href=&quot;https://regexr.com/5mhou&quot;&gt;https://regexr.com/5mhou&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;엘리의 드림코딩 - 정규표현식 깃허브(&lt;a href=&quot;https://github.com/dream-ellie/regex&quot;&gt;https://github.com/dream-ellie/regex&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;h3&gt;출처 : 엘리의 드림코딩 - 정규표현식 깃허브(&lt;a href=&quot;https://github.com/dream-ellie/regex&quot;&gt;https://github.com/dream-ellie/regex&lt;/a&gt;)&lt;/h3&gt;
&lt;h3&gt;&lt;b&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;Groups and ranges&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 101.86%; height: 294px;&quot; border=&quot;1&quot; width=&quot;492px&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 54px;&quot;&gt;
&lt;td style=&quot;height: 54px; width: 49.8837%;&quot; data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;Chracter&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style=&quot;height: 54px; width: 50%;&quot; data-colwidth=&quot;362&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;뜻&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 54px;&quot;&gt;
&lt;td style=&quot;height: 54px; width: 49.8837%;&quot; data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;|&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style=&quot;height: 54px; width: 50%;&quot; data-colwidth=&quot;362&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;또는&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 54px;&quot;&gt;
&lt;td style=&quot;height: 54px; width: 49.8837%;&quot; data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style=&quot;height: 54px; width: 50%;&quot; data-colwidth=&quot;362&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;그룹&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 54px;&quot;&gt;
&lt;td style=&quot;height: 54px; width: 49.8837%;&quot; data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;[]&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style=&quot;height: 54px; width: 50%;&quot; data-colwidth=&quot;362&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;문자셋, 괄호안의 어떤 문자든&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 54px;&quot;&gt;
&lt;td style=&quot;height: 54px; width: 49.8837%;&quot; data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;[^]&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style=&quot;height: 54px; width: 50%;&quot; data-colwidth=&quot;362&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;부정 문자셋, 괄호안의 어떤 문가 아닐때&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 54px;&quot;&gt;
&lt;td style=&quot;height: 54px; width: 49.8837%;&quot; data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;(?:)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style=&quot;height: 54px; width: 50%;&quot; data-colwidth=&quot;362&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;찾지만 기억하지는 않음&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3&gt;&lt;b&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;Quantifiers&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; width=&quot;492px&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;Chracter&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td data-colwidth=&quot;362&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;뜻&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;?&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td data-colwidth=&quot;362&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;없거나 있거나 (zero or one)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;*&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td data-colwidth=&quot;362&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;없거나 있거나 많거나 (zero or more)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;+&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td data-colwidth=&quot;362&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;하나 또는 많이 (one or more)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;{n}&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td data-colwidth=&quot;362&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;n번 반복&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;{min,}&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td data-colwidth=&quot;362&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;최소&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;{min,max}&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td data-colwidth=&quot;362&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;최소, 그리고 최대&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3&gt;&lt;b&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;Boundary-type&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; width=&quot;497px&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;Chracter&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td data-colwidth=&quot;367&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;뜻&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;\b&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td data-colwidth=&quot;367&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;단어 경계&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;\B&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td data-colwidth=&quot;367&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;단어 경계가 아님&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;^&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td data-colwidth=&quot;367&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;문장의 시작&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;$&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td data-colwidth=&quot;367&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;문장의 끝&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3&gt;&lt;b&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;Character classes&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; width=&quot;511px&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;Chracter&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td data-colwidth=&quot;381&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;뜻&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;\&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td data-colwidth=&quot;381&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;특수 문자가 아닌 문자&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td data-colwidth=&quot;381&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;어떤 글자 (줄바꿈 문자 제외)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;\d&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td data-colwidth=&quot;381&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;digit 숫자&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;\D&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td data-colwidth=&quot;381&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;digit 숫자 아님&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;\w&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td data-colwidth=&quot;381&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;word 문자&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;\W&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td data-colwidth=&quot;381&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;word 문자 아님&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;\s&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td data-colwidth=&quot;381&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;space 공백&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-colwidth=&quot;130&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;\S&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td data-colwidth=&quot;381&quot;&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;space 공백 아님&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p&gt;&lt;b&gt;&lt;span&gt;Titanic Data 에서의 적용&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Name 필드에는 아래와 같은 이름들이 있다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Bonnell, Miss. Elizabeth&lt;/p&gt;
&lt;p&gt;Nasser, Mrs. Nicholas (Adele Achem)&lt;/p&gt;
&lt;p&gt;Vander Planke, Mrs. Julius (Emelia Maria Vandemoortele)&lt;/p&gt;
&lt;p&gt;Williams-Lambert, Mr. Fletcher Fellows&lt;/p&gt;
&lt;p&gt;Clarke, Mrs. Charles V (Ada Maria Winfield)&lt;/p&gt;
&lt;p&gt;Ford, Miss. Doolina Margaret &quot;Daisy&quot;&lt;/p&gt;
&lt;p&gt;Duff Gordon, Lady. (Lucille Christiana Sutherland) (&quot;Mrs Morgan&quot;)&lt;/p&gt;
&lt;p&gt;Rothes, the Countess. of (Lucy Noel Martha Dyer-Edwards)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/eMpTa4/btq1e6LRKZY/w4AXhayz2rIcptN3mr2R60/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/eMpTa4/btq1e6LRKZY/w4AXhayz2rIcptN3mr2R60/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/eMpTa4/btq1e6LRKZY/w4AXhayz2rIcptN3mr2R60/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FeMpTa4%2Fbtq1e6LRKZY%2Fw4AXhayz2rIcptN3mr2R60%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;여기에서 우리는 Miss, Mrs, Lady와 같은 호칭을 뽑아내려고 한다.&lt;/p&gt;
&lt;p&gt;이 때 정규표현식을 사용해서 R에서 가져오게 되는데 아래와 같은 표현식을 사용한다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;full$Title &amp;lt;- gsub('(.*, )|(\\..*)', '', full$Name)&lt;/p&gt;
&lt;p&gt;여기서 '\\'로 '\'가번 쓰이는 것은, R에서는 '\'를 '\\'로 써야 백대시로 인식하기 때문이다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;gsub&lt;/b&gt;은 대체시키는 함수이다.&lt;/p&gt;
&lt;p&gt;대체시키려는 값과 대체시키는 값을 차례로 Paramter로 받는다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;결과는 아래와 같다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span&gt;(.*, )&lt;/span&gt;&lt;/b&gt; - 콤마와 공백 앞에 있는 모든 값&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span&gt;|&lt;/span&gt;&lt;/b&gt; - 또는&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span&gt;(\..*)&lt;/span&gt;&lt;/b&gt; - 점 다음에 있는 모든 값&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;u&gt;R에서 사용할 때는 \\를 \ 대신 사용한다는 것이 포인트였다.&lt;/u&gt;&lt;/p&gt;
&lt;p&gt;&lt;u&gt;정규표현식은 문자열을 다루기 위해서는 반드시 배워야할 필요가 있다는 점을 이해했다.&lt;/u&gt;&lt;/p&gt;
&lt;p&gt;&lt;u&gt;다음에 문자열을 다룰 때에는 좀더 편하게 다룰 수 있을 것 같다.&lt;/u&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;끝&lt;/p&gt;</description>
      <category>Data/R</category>
      <category>R 정규표현식</category>
      <category>정규표현식</category>
      <category>타이타닉 정규표현식</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/63</guid>
      <comments>https://bigdatajessie.tistory.com/63#entry63comment</comments>
      <pubDate>Sun, 28 Mar 2021 14:04:20 +0900</pubDate>
    </item>
    <item>
      <title>Git) Github Repository와 Local 환경 동기화</title>
      <link>https://bigdatajessie.tistory.com/62</link>
      <description>&lt;p&gt;예를 들어 A의 개발 환경에서 각각 개발하고 깃허브에 올린다음,&lt;/p&gt;
&lt;p&gt;그것을 B의 개발환경에서 다시 불러와서 작업하고 싶은 경우가 있다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;이 상태에서 그냥 Pull을 누를 경우 충돌이 생기면서 최신화가 되지 않는다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;이럴 때는 아래 코드를 참조하자.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1614374423989&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;git reset --hard HEAD
git pull&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;reset --hard HEAD 는 가장 최근의 코드로 Commit을 리셋합니다.&lt;/p&gt;
&lt;p&gt;그리고 이 상태에서&lt;/p&gt;
&lt;p&gt;git pull을 하시면 충돌 없이 최신화가 됩니다.&lt;/p&gt;</description>
      <category>Data/Git</category>
      <category>Git Pull 충돌</category>
      <category>Git 동기화</category>
      <category>Git 로컬 동기화</category>
      <category>Pull 충돌</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/62</guid>
      <comments>https://bigdatajessie.tistory.com/62#entry62comment</comments>
      <pubDate>Sat, 27 Feb 2021 06:21:33 +0900</pubDate>
    </item>
    <item>
      <title>R) R Markdowon 설치 시 에러(Error in install.packages : ERROR: failed to lock directory)</title>
      <link>https://bigdatajessie.tistory.com/61</link>
      <description>&lt;blockquote data-ke-style=&quot;style2&quot;&gt;Error in install.packages : ERROR: failed to lock directory&lt;br /&gt;Try removing &amp;lsquo;C:\Users\..../00LOCK&amp;rsquo;&lt;/blockquote&gt;
&lt;p&gt;R MarkDown을 사용하려니까 저런 에러가 발생했다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;해결 방법은 위에 해당하는 디렉토리로 가서 00LOCK이라고 하는 폴더를 지워주자&lt;/p&gt;
&lt;p&gt;그러면 R Markdown이 다시 제대로 동작한다.&lt;/p&gt;</description>
      <category>Data/R</category>
      <category>Error in install.packages : ERROR: failed to lock directory</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/61</guid>
      <comments>https://bigdatajessie.tistory.com/61#entry61comment</comments>
      <pubDate>Sun, 14 Feb 2021 13:12:27 +0900</pubDate>
    </item>
    <item>
      <title>R) 명령어로 버전 업그레이드 하기</title>
      <link>https://bigdatajessie.tistory.com/60</link>
      <description>&lt;p&gt;&lt;span&gt;&lt;span&gt;따로 CRAN Page에 들어가지 않고 명령어로 R 버전을 업그레이드 할 수 있다.&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&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;b&gt;&lt;span&gt;1. install.packages(&quot;installr&quot;)&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;패키지 콜을&amp;nbsp; 먼저 수행한다.&lt;/p&gt;
&lt;pre id=&quot;code_1613077654210&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;WARNING: Rtools is required to build R packages but is not currently installed. Please download and install the appropriate version of Rtools before proceeding:

https://cran.rstudio.com/bin/windows/Rtools/
Installing package into &amp;lsquo;C:/Users/Jessie/Documents/R/win-library/4.0&amp;rsquo;
(as &amp;lsquo;lib&amp;rsquo; is unspecified)
also installing the dependencies &amp;lsquo;glue&amp;rsquo;, &amp;lsquo;magrittr&amp;rsquo;, &amp;lsquo;stringi&amp;rsquo;, &amp;lsquo;stringr&amp;rsquo;

URL 'https://cran.rstudio.com/bin/windows/contrib/4.0/glue_1.4.2.zip'을 시도합니다
Content type 'application/zip' length 154967 bytes (151 KB)
downloaded 151 KB

URL 'https://cran.rstudio.com/bin/windows/contrib/4.0/magrittr_2.0.1.zip'을 시도합니다
Content type 'application/zip' length 235353 bytes (229 KB)
downloaded 229 KB

URL 'https://cran.rstudio.com/bin/windows/contrib/4.0/stringi_1.5.3.zip'을 시도합니다
Content type 'application/zip' length 15243599 bytes (14.5 MB)
downloaded 14.5 MB

URL 'https://cran.rstudio.com/bin/windows/contrib/4.0/stringr_1.4.0.zip'을 시도합니다
Content type 'application/zip' length 216647 bytes (211 KB)
downloaded 211 KB

URL 'https://cran.rstudio.com/bin/windows/contrib/4.0/installr_0.22.0.zip'을 시도합니다
Content type 'application/zip' length 341403 bytes (333 KB)
downloaded 333 KB

package &amp;lsquo;glue&amp;rsquo; successfully unpacked and MD5 sums checked
package &amp;lsquo;magrittr&amp;rsquo; successfully unpacked and MD5 sums checked
package &amp;lsquo;stringi&amp;rsquo; successfully unpacked and MD5 sums checked
package &amp;lsquo;stringr&amp;rsquo; successfully unpacked and MD5 sums checked
package &amp;lsquo;installr&amp;rsquo; successfully unpacked and MD5 sums checked

The downloaded binary packages are in
	C:\Users\Jessie\AppData\Local\Temp\RtmpINxkdB\downloaded_packages&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span&gt;2. library(installr)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;그리고 라이브러리 콜을 수행한다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1613077681631&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;필요한 패키지를 로딩중입니다: stringr

Welcome to installr version 0.22.0

More information is available on the installr project website:
https://github.com/talgalili/installr/

Contact: &amp;lt;tal.galili@gmail.com&amp;gt;
Suggestions and bug-reports can be submitted at: https://github.com/talgalili/installr/issues

			To suppress this message use:
			suppressPackageStartupMessages(library(installr))&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span&gt;3. check.for.updates.R()&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;위 명령어 수행을 통해 R의 버전을 확인한다.&lt;/p&gt;
&lt;p&gt;나는 현재 업데이트가 마친 상태이므로 (21.02.12 기준) 4.0.3 버전이 설치가 완료되었다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/q1sZs/btqWUMTbJcg/mpZYKOP7EkddhsfvVlxUzK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/q1sZs/btqWUMTbJcg/mpZYKOP7EkddhsfvVlxUzK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/q1sZs/btqWUMTbJcg/mpZYKOP7EkddhsfvVlxUzK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fq1sZs%2FbtqWUMTbJcg%2FmpZYKOP7EkddhsfvVlxUzK%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span&gt;4. install.R()&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;위 명령어 수행과 동시에 설치에 대한 진행이 시작되고 그대로 Next - Next로 쫓아 수행한다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span&gt;5. version&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;인스톨을 마친 후에 RStudio를 종료하고 실행 후 version 명령어를 입력하여 현재의 버전을 확인 할 수 있다. 아래 내용처럼 현재의 R버전이 4.0.3 (2020-10-10)의 최신 버전인 것을 확인 가능하다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1613077871430&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt; version
               _                           
platform       x86_64-w64-mingw32          
arch           x86_64                      
os             mingw32                     
system         x86_64, mingw32             
status                                     
major          4                           
minor          0.3                         
year           2020                        
month          10                          
day            10                          
svn rev        79318                       
language       R                           
version.string R version 4.0.3 (2020-10-10)
nickname       Bunny-Wunnies Freak Out &lt;/code&gt;&lt;/pre&gt;</description>
      <category>Data/R</category>
      <category>R update</category>
      <category>R 버전 업</category>
      <category>R 버전 업그레이드</category>
      <category>R 업그레이드</category>
      <category>R 업데이트</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/60</guid>
      <comments>https://bigdatajessie.tistory.com/60#entry60comment</comments>
      <pubDate>Fri, 12 Feb 2021 06:12:15 +0900</pubDate>
    </item>
    <item>
      <title>Git Bash) mkdir부터 Permission Denied 뜨는 경우</title>
      <link>https://bigdatajessie.tistory.com/59</link>
      <description>&lt;p&gt;Git의 첫 시작은 Git Bash에서 mkdir부터 시작합니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;오랜만에 다시 Git을 사용해보려고(거의 복기 수준) 매뉴얼 보면서 따라가보는데&lt;/p&gt;
&lt;p&gt;그런데 오늘은 처음부터 복병이 있네요. Permission Denied라고 뜹니다 ㅠ_ㅠ&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;이걸 해결하려고 찾아보고 실행해본 방법 중 가장 쉬운방법은&lt;/p&gt;
&lt;p&gt;아이콘에서 오른쪽 마우스 하고 &lt;u&gt;&lt;b&gt;관리자 권한으로 실행&lt;/b&gt;&lt;/u&gt;하는 방법이었습니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;이 방법으로 Try 해보세요 :)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Data/Git</category>
      <category>Git Bash Permission Denied</category>
      <category>Git 오류</category>
      <category>Permission denied</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/59</guid>
      <comments>https://bigdatajessie.tistory.com/59#entry59comment</comments>
      <pubDate>Sun, 7 Feb 2021 06:34:19 +0900</pubDate>
    </item>
    <item>
      <title>R) Data Frame 다루기</title>
      <link>https://bigdatajessie.tistory.com/57</link>
      <description>&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&amp;lt;순서&amp;gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;1. 데이터 프레임 만들기&lt;/p&gt;
&lt;p&gt;2. 데이터 프레임에 Column 추가&lt;/p&gt;
&lt;p&gt;3. 데이터 프레임에서 Column 제거&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. 데이터 프레임 만들기&lt;/h3&gt;
&lt;p&gt;종종 샘플 데이터를 만들 때 데이터프레임을 직접 만들어야 하는 경우가 있습니다. R에서 데이터 프레임을 직접 만드는 방법은 아래와 같습니다.&lt;/p&gt;
&lt;pre id=&quot;code_1612557613956&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# Data Frame 만들기

id &amp;lt;- c(1,2,3,4,5,6)
class &amp;lt;- c(1,1,1,1,2,2)
math &amp;lt;- c(50,60,45,30,25,50)
english &amp;lt;- c(98,97,86,98,80,89)

exam &amp;lt;- data.frame(id,class,math,english, stringsAsFactors = F)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;1) c()를 이용해 길이를 맞춰 벡터를 생성한다&lt;/p&gt;
&lt;p&gt;2) 해당 벡터를 data.frame이라는 함수와 함께 생성한다.&lt;/p&gt;
&lt;p&gt;3) Character가 자동으로 Factor로 처리되는 것을 막기 위해 stringsAsFactors = F로 설정해준다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;결과는 아래와 같습니다.&lt;/p&gt;
&lt;pre id=&quot;code_1612558030083&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;  id class math english
1  1     1   50      98
2  2     1   60      97
3  3     1   45      86
4  4     1   30      98
5  5     2   25      80
6  6     2   50      89&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;꼭 이 방법을 사용해야 하는 것은 아니지만, 가장 깔끔하게 데이터를 생성할 수 있는 방법이라고 생각합니다.&lt;/p&gt;
&lt;p&gt;더 좋은 방법은 댓글로 공유해주세요 :)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2. 데이터 프레임에 Column 추가하기&lt;/h3&gt;
&lt;p&gt;위에서 만든 데이터 프레임은 시험 점수에 대한 데이터 프레임입니다. 만약 데이터 프레임에 과학점수를 추가하고 싶을 수 있겠죠? 그럼 어떻게 해야 할까요?&lt;/p&gt;
&lt;pre id=&quot;code_1612557822276&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# Data Frame Column 추가하기
# 1) $ 사용하기
exam$science &amp;lt;- c(50,60,78,58,65,98)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;먼저 위와 같이 $로 이용한 방법이 있습니다.&lt;/p&gt;
&lt;p&gt;기존의 데이터 프레임에서 $를 사용하여 새로운 Column이름을 붙여주고 똑같은 길이의 벡터를 붙여주는 방법입니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1612557886294&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# 2) transform 함수 사용하기
exam &amp;lt;- transform(exam, physics = c(10,10,10,20,40,30))&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;두 번째로 transform 함수를 사용하는 방법입니다.&lt;/p&gt;
&lt;p&gt;Transform 함수를 통하여 Physics라는 Column을 추가했습니다.&lt;/p&gt;
&lt;p&gt;결과를 볼까요?&lt;/p&gt;
&lt;pre id=&quot;code_1612557983451&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;  id class math english science physics
1  1     1   50      98      50      10
2  2     1   60      97      60      10
3  3     1   45      86      78      10
4  4     1   30      98      58      20
5  5     2   25      80      65      40
6  6     2   50      89      98      30&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Science와 Physics가 잘 생성된 것을 볼 수 있네요 :)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;3. 데이터 프레임에서 Column 제거&lt;/h3&gt;
&lt;p&gt;마지막으로 만든 Column을 지우고 싶은 경우가 있을 수 있습니다. 현재 exam 데이터 프레임에는 science와 physics 점수가 들어가 있습니다. 이 중 physics 점수를 빼고 싶다고 가정할게요.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1612558196291&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# Data Frame Column Column 지우기

exam$physics &amp;lt;- NULL
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;$을 사용해서 제거를 원하는 Column에 NULL을 할당해주면 됩니다. 간단하죠?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;감사합니다 :)&lt;/p&gt;</description>
      <category>Data/R</category>
      <category>R Data Frame</category>
      <category>R 데이터 프레임</category>
      <category>R 데이터 프레임 만들기</category>
      <category>데이터 프레임</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/57</guid>
      <comments>https://bigdatajessie.tistory.com/57#entry57comment</comments>
      <pubDate>Sat, 6 Feb 2021 05:53:06 +0900</pubDate>
    </item>
    <item>
      <title>R) rvest와 httr 이용해서 네이버 실시간 증권 뉴스 크롤링</title>
      <link>https://bigdatajessie.tistory.com/55</link>
      <description>&lt;p&gt;데이터 분석에서 데이터를 구하는 일은 늘 숙제인 것 같다.&lt;/p&gt;
&lt;p&gt;오늘은 네이버 실시간 증권 뉴스를 가져오는 연습을 진행해본다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. 네이버 증권뉴스 주소&amp;nbsp;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&quot;https://finance.naver.com/news/news_list.nhn?mode=LSS2D&amp;amp;section_id=101&amp;amp;section_id2=258&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;finance.naver.com/news/news_list.nhn?mode=LSS2D&amp;amp;section_id=101&amp;amp;section_id2=258&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1609857536575&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;article&quot; data-og-title=&quot;실시간 속보 : 네이버 금융&quot; data-og-description=&quot;관심종목의 실시간 주가를 가장 빠르게 확인하는 곳&quot; data-og-host=&quot;finance.naver.com&quot; data-og-source-url=&quot;https://finance.naver.com/news/news_list.nhn?mode=LSS2D&amp;amp;section_id=101&amp;amp;section_id2=258&quot; data-og-url=&quot;http://finance.naver.com/news/news_list.nhn?mode=LSS2D&amp;amp;section_id=101&amp;amp;section_id2=258&amp;amp;type=0&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/b2G207/hyIPInNE2t/OfcVNfl3v9FLVKmBLyAJ3k/img.png?width=200&amp;amp;height=200&amp;amp;face=0_0_200_200&quot;&gt;&lt;a href=&quot;https://finance.naver.com/news/news_list.nhn?mode=LSS2D&amp;amp;section_id=101&amp;amp;section_id2=258&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://finance.naver.com/news/news_list.nhn?mode=LSS2D&amp;amp;section_id=101&amp;amp;section_id2=258&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/b2G207/hyIPInNE2t/OfcVNfl3v9FLVKmBLyAJ3k/img.png?width=200&amp;amp;height=200&amp;amp;face=0_0_200_200');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;실시간 속보 : 네이버 금융&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;관심종목의 실시간 주가를 가장 빠르게 확인하는 곳&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;finance.naver.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ZL9X1/btqSsQlFwa5/3rrIyVkew7jM6XSxhLyze1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ZL9X1/btqSsQlFwa5/3rrIyVkew7jM6XSxhLyze1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ZL9X1/btqSsQlFwa5/3rrIyVkew7jM6XSxhLyze1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FZL9X1%2FbtqSsQlFwa5%2F3rrIyVkew7jM6XSxhLyze1%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;뉴스 제목에서 오른쪽 마우스 - 검사를 누르면 오른쪽에 패널이 생기면서 태그들이 생성됨&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2. RStudio 켜고 패키지 다운 및 라이브러리 생성&lt;/h3&gt;
&lt;pre id=&quot;code_1609857828150&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;install.packages(c(&quot;rvest&quot;,&quot;ggplot2&quot;,&quot;dplyr&quot;,&quot;httr&quot;))
library(httr)
library(rvest)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;3. URL 생성&lt;/h3&gt;
&lt;pre id=&quot;code_1609857841302&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;url &amp;lt;- 'https://finance.naver.com/news/news_list.nhn?mode=LSS2D&amp;amp;section_id=101&amp;amp;section_id2=258'
data &amp;lt;- GET(url)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;위에 링크에 맞는 url을 url객체에 넣어준다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;4. 태그를 찾아 text 뽑아내기&lt;/h3&gt;
&lt;pre id=&quot;code_1609857852161&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;news &amp;lt;- read_html(data, encoding=&quot;EUC-KR&quot;)

headlines &amp;lt;- news %&amp;gt;% 
  html_nodes('dl') %&amp;gt;% 
  html_nodes('.articleSubject') %&amp;gt;% 
  html_nodes('a') %&amp;gt;% 
  html_text()&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;5. 결과 보기&lt;/h3&gt;
&lt;pre id=&quot;code_1609857909831&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt; [1] &quot;&amp;lsquo;삼천피&amp;rsquo;&amp;lsquo;천스닥&amp;rsquo; 시대 눈앞에 왔다&quot;                                                  
 [2] &quot;박셀바이오, `투자위험종목` 지정에 6일 거래정지된다&quot;                                     
 [3] &quot;코로나19로 지친 삶&amp;hellip;술&amp;middot;담배 소비액 역대 최대&quot;                                          
 [4] &quot;[신년 대예측]코스피 3천 시대?&amp;hellip;동학개미 힘 어디까지?&quot;                                   
 [5] &quot;[데일리안 오늘뉴스 종합] 박원순 피소 몰랐다는 남인순에 野 맹폭, 배달비 부담에 직접 나..&quot;
 [6] &quot;[어르신이 행복한 나라] 경제력 있고 건강한데 여가는 아직도 경로당?&quot;                      
 [7] &quot;두산 오너家, 퓨얼셀 지분 3천억 규모 블록딜로 처분&quot;                                      
 [8] &quot;고객 대접할 쿠키를 발 위에&amp;hellip;백화점 직원들의 일탈&quot;                                       
 [9] &quot;코스피 3000선 육박&amp;hellip;배경엔 68조 고객예탁금&quot;                                             
[10] &quot;코스피 1000 돌파후 31년만에 `삼천스피`시대 연다&quot;                                        
[11] &quot;[마켓인사이트]두산 오너家의 '새옹지마'...석달 전보다 50% 높은값에 퓨얼셀 블록딜&quot;        
[12] &quot;[표]아시아 주요 증시 동향(1월 5일)&quot;                                                     
[13] &quot;국민연금, 대한항공의 아시아나 인수 '반대'...\&quot;주주가치 훼손 우려\&quot;&quot;                     
[14] &quot;5일 장 마감 후 주요 종목 뉴스&quot;                                                          
[15] &quot;&amp;ldquo;세스코, 믿고 먹는 깨끗한 음식점 되는데 도움&amp;rdquo;&quot;                                        
[16] &quot;장 마감 후 기업공시[1월 5일]&quot;                                                           
[17] &quot;[마켓인사이트]AJ셀카, 중고차 '오토허브' 운영사 신동해홀딩스에 매각&quot;                     
[18] &quot;'8만전자' 된 삼성전자, 시총도 500조원 돌파&quot;                                             
[19] &quot;엔드림, 조이시티 지분 23만주 추가 취득&quot;                                                 
[20] &quot;오르비텍, 100억원 규모 CB 발행 결정&quot;      &lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;So Happy Baby&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;크롤링하는 법은 해도 해도 잘 안쓰니 까먹는 것 같다.&lt;/p&gt;
&lt;p&gt;R을 산소처럼 사용해야 이 툴이 손에 익을텐데 아직은 멀었나보다.&lt;/p&gt;
&lt;p&gt;Qlik 사용하듯 R을 편하게 다루는 날도 얼른 왔으면 좋겠다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;끝&lt;/p&gt;</description>
      <category>Data/R</category>
      <category>httr</category>
      <category>R 크롤링</category>
      <category>rvest</category>
      <category>네이버뉴스 크롤링</category>
      <category>크롤링</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/55</guid>
      <comments>https://bigdatajessie.tistory.com/55#entry55comment</comments>
      <pubDate>Tue, 5 Jan 2021 23:47:53 +0900</pubDate>
    </item>
    <item>
      <title>퀀트를 향한 걸음마</title>
      <link>https://bigdatajessie.tistory.com/54</link>
      <description>&lt;p&gt;섣부르게 퀀트를 시작해야겠다는 마음은 잠깐 접어두기로 한다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;스스로 백테스팅을 진행할 수 있고 그 전략에 신뢰를 가질 수 있는 정도가 되어서야만이 그 전략을 흔들리지 않고 믿을 수 있는 실력에 이를 수 있다고 생각한다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;하지만 책들을 살펴봐도, 그런 백테스팅을 수동으로 할 수 있는 방법을 알려주는 곳이 잘 없는 것 같다. (백테스팅을 하더라도 안의 로직들은 숨겨져 있는 경우를 포함)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;그래서 스스로 공부하면서 백테스트를 수행해보고 다양한 전략을 검증해보는 경지에 이르러보고 싶다는 생각이 들었다.&lt;/p&gt;
&lt;p&gt;하지만 그냥 되지는 않을 것 같아서 시간을 두고 해보기로 했다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;업무가 바쁘지만, 시간을 쪼개서 이 작업과 공부를 병행할 수 있는 능력과 끈기를 길러보고 싶다.&lt;/p&gt;
&lt;p&gt;오랫동안 잊고 있던 작업이다. 끈기 있게 물고 늘어져서 완성하는 것 말이다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;2021년은 제씨 퀀트의 원년의 해로 정하고 마음을 다잡아보자.&lt;/p&gt;
&lt;p&gt;그리고 이 과정에서 나는 컴퓨터공학적 지식과 투자지식을 모두 활용하여 하나의 방법론으로 엮어갈 수 있는 힘과 능력을 얻게 되리라 믿어본다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;천천히, 하지만 꾸준히.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;2021.01.03 제씨&lt;/b&gt;&lt;/p&gt;</description>
      <category>Investment/퀀트</category>
      <category>퀀트 시작</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/54</guid>
      <comments>https://bigdatajessie.tistory.com/54#entry54comment</comments>
      <pubDate>Sun, 3 Jan 2021 16:23:07 +0900</pubDate>
    </item>
    <item>
      <title>20년치 재무제표 데이터를 구할 방법은 없을까?</title>
      <link>https://bigdatajessie.tistory.com/52</link>
      <description>&lt;p&gt;&quot;내가 직접 백테스팅을 해서 퀀트투자의 포트폴리오를 평가할 수는 없을까?&quot;&lt;/p&gt;
&lt;p&gt;이 질문으로부터 시작했습니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;그 다음 이 질문으로 넘어갔지요.&lt;/p&gt;
&lt;p&gt;&quot;그럼 20년치의 기업 재무제표 데이터를 모두 구할 수는 없을까?&quot;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Price의 변화와 거래량은 20년이든 30년이든 네이버 데이터를 활용하면 어렵지 않게 크롤링할 수 있었습니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;하지만 재무제표 데이터는 손질이 많이 필요한 데이터이니만큼, 3년치 이상의 데이터를 구하기가 쉽지 않았죠.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;그래서 현재는 FnGuide의 데이터를 유료로 구매해서 사용해볼 생각입니다.&lt;/p&gt;
&lt;p&gt;백테스트를 수행해보기 위해서는 불가피한 과정이기도 할 것 같네요.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;앞으로 20년치 데이터를 확보한 후 Qlik으로 백테스팅하여 퀀트를 수행하려고 합니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;그 중간 과정을 보여드리도록 하죠.&lt;/p&gt;</description>
      <category>Investment/재무제표</category>
      <category>재무제표 20년치</category>
      <category>재무제표 데이터 구하기</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/52</guid>
      <comments>https://bigdatajessie.tistory.com/52#entry52comment</comments>
      <pubDate>Fri, 1 Jan 2021 22:16:41 +0900</pubDate>
    </item>
    <item>
      <title>영화리뷰) 마션</title>
      <link>https://bigdatajessie.tistory.com/51</link>
      <description>&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;먼저 하는 세줄 요약:&lt;/p&gt;
&lt;p&gt;마션 너무 끝내줘. 엔지니어 멋있어. 나도 탐험이 하고 싶다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;주말마다 지방에서 업무를 하는 탓에 긴 시간을 버스에서 보내야 한다. 그런데 요즘 세상이 얼마나 좋아졌냐면, 스트리밍으로 영화를 봐버린다는 것이다. 갓플릭스의 은혜를 받고 본 마션의 후기, 지금 시작한다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;1. 엔지니어를 향한 미국의 시선&lt;/h2&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;우리가 가장 가까이에서 사용하는 것들 중에서 엔지니어의 손으로부터 탄생하지 않은 것이 없다. 가전, 컴퓨터, 자동차, 핸드폰, 지금 타고 있는 이 버스까지. 엔지니어들은 늘 문제를 고민하며 그것을 해결할 수 있는 구체적 방법을 고안해 난제를 해결한 사람들이다. 그리고 그들에 대한 감독의 존경심이 이 영화 전체에 녹아져 있는 것 같다. 기술을 가진 사람이 결국 상상력을 가지면 그것을 진짜로 만들어낼 수 있는 거구나 하는 것을 영화로써 보여주는 것 뿐인데, 너무 벅차고 신났다.&lt;/p&gt;
&lt;p&gt;만약 내가 어릴 때 이 영화를 봤고, 이 영화에서 의미하는 것들을 이해할 수 있었다면, 나는 지체없이 공학을 공부했을 것 같다. 그 때는 맞고 지금은 틀린 게 아니지만, 그래도 아쉽다. 상상력을 실천으로 만드는 힘에 나는 너무나도 큰 공경을 이제서야 가지는 것 같다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;2. 아직 탐험되지 않은 곳을 향한 인간의 호기심&lt;/h2&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;현 지구의 구석구석은 탐험되었다. 물론 바다 아래 깊은 곳은 아직 인류의 영역 밖이나, 그래도 우리가 발을 딛고 걸을 수 있는 곳 중에서 인류의 호기심이 닿지 않은 곳이 없다. 새로운 곳에서 새로운 것을 만나는 것은 정말 신나는 일이다. 물론 그것이 겉잡을 수 없는 공포와 준비되지 않은 참혹함으로 이어져왔던 과거의 역사가 있지만, 그럼에도 불구하고 뻗어온 인류의 호기심 덕에 하나의 지구라는 공동체로서 세계인이 묶였다.&lt;/p&gt;
&lt;p&gt;그런 의미에서 영화 내내 화성을 상상했다. 영화 속의 저 장면은 분명 똑같지 않더라도, 우주 저 편 어딘가에 실제로 존재하는 곳이겠지. 나도 저 곳에 닿아보고 싶다. 그 곳에서 붉은 흙을 비추는 태양빛을 바라보고 싶다는 생각을 했다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;3. 생존의 의지는 벅차오른다.&lt;/h2&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;죽으려고 하는 의지는 무기력하다. 무엇도 할 수 없다고 느끼게 만들지만, 살아야겠다는 의지는 눈 앞에 있는 모든 문제를 해결할 수 있는 방법을 찾게 한다. 나는 문제해결의 순간이 생존, 또는 당면한 문제와 매우 가까이 있다는 것을 확인했다. 영어가 느는 순간은 내가 외국에서 유학을 해야 하는 때이며, 코딩이 느는 순간은 당장 내일 이 문제를 해결하지 않으면 처먹어야 하는 욕 때문이듯, 와트니를 움직인 것은 급박한 문제(물론 심각성에 있어서 비교가 안되는 수준이지만)를 해결해야 하겠다는 의지였던 것 같다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;4. 한 사람의 목숨을 두고 내리는 결정&lt;/h2&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;예전에 피랍되었던 한국인을 두고 갑론을박했던 일이 있었다. 사람의 목숨과 그들을 구하는 데에 걸린 수많은 자원과 또다른 희생과 관련된 문제였기 때문이다. 그 때 피랍된 사람을 구해야겠다고 내린 결정에는 어떤 가치가 내포되어 있었을까? 만약 일이 잘못된다고 하더라도 그것을 이해할 수 있는 마음에는 무엇이 있을까?&lt;/p&gt;
&lt;p&gt;한 사람의 목숨값은 얼마일까. 그것이 타인일 때는 그렇게 가벼워 보이지 않다가도, 나의 문제로 다가왔을 때는 그것은 온 세상의 문제다. 하지만 영화에서는 와트니의 생명만이 걸려있었다고 보이진 않는다. 인류가 걸어두고 온 희망, 꺼뜨리지 않고 그것을 찾으려는 의지, 앞서 말했던 벅차오르는 생에 대한 집착 같은 것이 눈물짓도록 힘쓰게 만드는 원동력 같다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;기대하지 않고 봤는데, 시간가는 줄 모르고 본 영화 마션. 2015년도 개봉한 영화이나 많은 사람에게 추천해주고 싶다. 아 이과갈걸.&lt;/p&gt;</description>
      <category>마션 리뷰</category>
      <category>영화 마션</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/51</guid>
      <comments>https://bigdatajessie.tistory.com/51#entry51comment</comments>
      <pubDate>Sun, 15 Nov 2020 22:01:20 +0900</pubDate>
    </item>
    <item>
      <title>Notepad++ 줄바꿈 찾기</title>
      <link>https://bigdatajessie.tistory.com/49</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/1gNsj/btqMtyDjNz2/EPNTg3KuucN3lfbFVP0Y60/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/1gNsj/btqMtyDjNz2/EPNTg3KuucN3lfbFVP0Y60/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/1gNsj/btqMtyDjNz2/EPNTg3KuucN3lfbFVP0Y60/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F1gNsj%2FbtqMtyDjNz2%2FEPNTg3KuucN3lfbFVP0Y60%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;노트패드에서 디버깅할 때 ; 단위로 끊어져있지 않은 경우 가독성이 매우 떨어진다..&lt;/p&gt;
&lt;p&gt;이럴 때 사용할 수 있는 유용한 잡기!&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;1. 'Alt + F'&lt;/p&gt;
&lt;p&gt;2. 찾을 내용 :&amp;nbsp; ;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;3. 검색 모드-확장(\n, \r, \t, \0, \x...) 체크&lt;/p&gt;
&lt;p&gt;4. 바꿀내용 : ;\n&lt;/p&gt;
&lt;p&gt;5. 모두 바꾸기(&lt;u&gt;A&lt;/u&gt;) 클릭&lt;/p&gt;</description>
      <category>Data/ETC</category>
      <category>notepad</category>
      <category>notepad 줄바꿈</category>
      <category>notepad++ 줄바꿈</category>
      <category>notepade++</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/49</guid>
      <comments>https://bigdatajessie.tistory.com/49#entry49comment</comments>
      <pubDate>Tue, 3 Nov 2020 18:20:31 +0900</pubDate>
    </item>
    <item>
      <title>QlikView - Performance 향상시키는 방법</title>
      <link>https://bigdatajessie.tistory.com/48</link>
      <description>&lt;p&gt;안녕하세요 제씨입니다.&lt;/p&gt;
&lt;p&gt;가을이 한층 더 깊어졌네요. 점점 추위가 익숙해지는 날씨가 되는 것 같습니다.&lt;/p&gt;
&lt;p&gt;여러분도 고뿔 조심하셔요 :)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;오늘은 고객사와 논의하면서&lt;u&gt; Performance에 대한 이슈&lt;/u&gt;가 제기되었습니다.&lt;/p&gt;
&lt;p&gt;무슨 말이냐면, QlikView의 화면 로딩이 느리다는 것이지요 ㅠ_ㅠ&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;저도 어찌어찌하면서 찾아보니 다음과 같은 자료가 잘 정리되어 있더군요.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/cDDZMM/btqMmpf4uMI/Y4a6BZL4zjZygzvOorKrok/Performance%20and%20Optimization%20Best%20Practices%20in%20Qlik%20v2.pptx?attach=1&amp;amp;knm=tfile.pptx&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;Performance and Optimization Best Practices in Qlik v2.pptx&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;3.45MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Qlik community에서 배포되어있는 파일을 참고삼아 공유합니다.&lt;/p&gt;
&lt;p&gt;&lt;u&gt;영어로 되어있지만, 꼼꼼하게 퍼포먼스 향상을 어떻게 해야 하는지 적혀있으니 참고하세요 :)&lt;/u&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;퍼포먼스가 느려지는 이유는 다양하지만 대표적으로 꼽자면,&lt;/p&gt;
&lt;p&gt;데이터가 너무 방대하거나, 화면에 표현식이 너무 많이 들어가 있거나&lt;/p&gt;
&lt;p&gt;If나 반복문 로직을 사용해서 퍼포먼스가 안좋아지는 경우가 대표적이겠네요.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;u&gt;&lt;b&gt;그럼 이런 퍼포먼스 이슈들을 어떻게 해결해야 할까요?&lt;/b&gt;&lt;/u&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;1. 복잡한 수식은 Script에서 해결하기&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;화면에서 If를 쓰거나 반복문을 사용할 때 먼저 생각해야 할 점은, 그 표현식의 로직을 Script에 태울 수 있냐는 점입니다.&lt;/p&gt;
&lt;p&gt;그럼 Qvd파일로 마트화해서 데이터 값만 불러들이고, 표현식에서는 간단한 Sum정도로 표현할 수 있도록 하는 것이죠.&lt;/p&gt;
&lt;p&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;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;2. IF 연속문을 Pick-Match로 치환하기&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;If문 안에 If문이 들어있는 경우, 퍼포먼스에 큰 영향을 미친다고 합니다. If문이 기본적으로 연관된 테이블을 스캔하기 때문이라고 하네요. 그래서 시간이 지날수록 퍼포먼스가 좋아질 리가 없겠죠?&lt;/p&gt;
&lt;p&gt;그럼 이런 경우 가급적이면 Pick-Match로 치환하여 표현할 수 있는 방법을 사용하는 게 좋습니다.&lt;/p&gt;
&lt;pre id=&quot;code_1604328295038&quot; class=&quot;html xml&quot; style=&quot;display: block; overflow: auto; padding: 15px; color: #383a42; background: #f6f7f8; font-size: 14px; border-radius: 3px; font-family: Menlo, Consolas, Monaco, monospace; border: 1px solid #dddddd; margin: 20px auto 0px; cursor: default; z-index: 1; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;	If( Region=&amp;lsquo;North America&amp;rsquo;,  100, 
		if( Region=&amp;lsquo;Asia&amp;rsquo;,50, 
			if( Region=&amp;lsquo;Europe&amp;rsquo;,75)
		)
	)
&lt;/code&gt;&lt;/pre&gt;
&lt;pre id=&quot;code_1604328331231&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;=pick( match( Region,'North America','Asia','Europe'),100,50,75)
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;3. Set으로 대체하여 사용하기&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span&gt;가급적 Set으로 사용할 수 있으면 Set으로 표현하고, If문을 최소화하는 게 좋습니다. 또한 If문을 불가피하게 사용해야 할 경우에는, 문자열 검색이 아닌 Integer 검색이 될 수 있도록 구축하는 게 좋습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;하지만 Set으로 표현할 수 있다면 최선이겠죠?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;Worst:&amp;nbsp; Sum(&amp;nbsp; If(&amp;nbsp; ClientGroup=&amp;lsquo;North America Sales&amp;rsquo;&lt;/span&gt;&lt;span&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;, Sales) )&lt;/span&gt;&lt;span&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Better:&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;Sum( If ( &lt;/span&gt;&lt;span&gt;ClientGroupNum&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;,Sales)) &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;Best:&amp;nbsp; Sum( {&amp;lt;ClientGroupNum={1}&lt;/span&gt;&lt;span&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&amp;gt;} Sales)&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&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;4. AGGR(), 계산된 차원(Caculated Dimension)도 가급적 피하자&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;Aggr() 함수는 강력한 기능입니다. 표현식 내에서 Group By 값으로 집계된 값을 계산할 수 있도록 도와주죠. 하지만 퍼포먼스 측면에서는 도움이 되지는 않습니다. 그래서 가급적이면, Script 단에서 내려서 해결해주는 게 좋다고 하네요!&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;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;5. 3~4개 이상의 테이블을 참조하는 차트를 가급적 피하자&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;데이터 모델링에서 신경써야 하는 부분이겠죠. &lt;span style=&quot;color: #333333;&quot;&gt;그래서 &lt;/span&gt;Fact Table은 가급적 최소화 하는 게 좋습니다. 다양한 테이블을 참조해서 가져오게 되면 성능이 저하되니까요.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;퍼포먼스를 고려한다면 가급적 모든 Table을 Concatenate해서 하나의 통테이블로 만들면 좋다고 합니다. 하지만 모델링 측면에서 반복되는 데이터를 줄이고, Schema를 담은 정리하기 위해서는 그 중간을 잘 찾아가는 게 개발자/컨설턴트의 역할일 것 같습니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;가만 살펴보니 퍼포먼스 저하의 주범은 If문인 경우가 대부분이군요. 조건문을 최소화하는 방향으로 고객사의 화면을 가볍게 만들어봐야겠습니다. 숱을 치는 느낌으로 말이죠 :)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;이상으로 오늘의 포스팅을 마치겠습니다.&lt;/p&gt;
&lt;p&gt;그럼 다음 포스팅까지 안녕히!&lt;/p&gt;</description>
      <category>Data/Qlik</category>
      <category>Qlik View</category>
      <category>Qlikview</category>
      <category>QlikView Performance</category>
      <category>클릭뷰</category>
      <category>클릭뷰 성능</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/48</guid>
      <comments>https://bigdatajessie.tistory.com/48#entry48comment</comments>
      <pubDate>Mon, 2 Nov 2020 23:58:18 +0900</pubDate>
    </item>
    <item>
      <title>어쩌다 HTML -(2) 버튼 만들기</title>
      <link>https://bigdatajessie.tistory.com/46</link>
      <description>&lt;p&gt;안녕하세요 제씨입니다!&lt;/p&gt;
&lt;p&gt;원래라면 HTML을 구성하는 순서가 있겠습니다만, 누가 이걸 정주행을 하겠습니까? ^_^;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;요즘은 생활코딩도 있고, 좋은 강의도 넘쳐나는 시대이니까요.&lt;/p&gt;
&lt;p&gt;정말 코딩하기 좋은 시대라고 한 이고잉님의 말씀이 맞는 것 같아요.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;아무튼 본론으로 들어가볼까요?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;HTML 버튼 만들기 - Input Type&lt;/h2&gt;
&lt;p&gt;&lt;b&gt;1) 먼저 HTML 기본 포멧&lt;/b&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1604216193371&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;lt;!doctype html&amp;gt;

&amp;lt;html&amp;gt;
    &amp;lt;head&amp;gt;
       &amp;lt;meta charset=&quot;utf-8&quot;&amp;gt;
    &amp;lt;/head&amp;gt;

    &amp;lt;body&amp;gt;

    &amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;그래도 헤더랑 바디는 있어야 하니까요 :)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;2) 버튼 명령어 집어넣기&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;아래 명령어를 바디와 바디 사이에 집어 넣습니다.&lt;/p&gt;
&lt;pre id=&quot;code_1604216299195&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;lt;button type=&quot;button&quot;&amp;gt;Click Me!&amp;lt;/button&amp;gt;&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;&lt;b&gt;&lt;a href=&quot;https://www.w3schools.com/tags/tag_button.asp&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;www.w3schools.com/tags/tag_button.asp&lt;/a&gt;&lt;/b&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1604216273246&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;website&quot; data-og-title=&quot;HTML button tag&quot; data-og-description=&quot;HTML Tag Example A clickable button is marked up as follows: &amp;lt;button type=&amp;quot;button&amp;quot;&amp;gt;Click Me!&amp;lt;/button&amp;gt; Try it Yourself &amp;raquo; More &amp;quot;Try it Yourself&amp;quot; examples below. Definition and Usage The tag defines a clickable button. Inside a element you can put text (and &quot; data-og-host=&quot;www.w3schools.com&quot; data-og-source-url=&quot;https://www.w3schools.com/tags/tag_button.asp&quot; data-og-url=&quot;https://www.w3schools.com/tags/tag_button.asp&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://www.w3schools.com/tags/tag_button.asp&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://www.w3schools.com/tags/tag_button.asp&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;HTML button tag&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;HTML Tag Example A clickable button is marked up as follows: &lt;/p&gt;
&lt;button type=&quot;button&quot;&gt;Click Me!&lt;/button&gt;
&lt;p class=&quot;og-desc&quot;&gt; Try it Yourself &amp;raquo; More &quot;Try it Yourself&quot; examples below. Definition and Usage The tag defines a clickable button. Inside a element you can put text (and&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;www.w3schools.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;&lt;b&gt;3) 결과 확인하기&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; width=&quot;603&quot; height=&quot;NaN&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bgJqE7/btqMeFb1U0H/fOikY5oAMZ7Jiu1sw6t5x1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bgJqE7/btqMeFb1U0H/fOikY5oAMZ7Jiu1sw6t5x1/img.png&quot; data-alt=&quot;생겼다! 버튼!&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bgJqE7/btqMeFb1U0H/fOikY5oAMZ7Jiu1sw6t5x1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbgJqE7%2FbtqMeFb1U0H%2FfOikY5oAMZ7Jiu1sw6t5x1%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; width=&quot;603&quot; height=&quot;NaN&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;생겼다! 버튼!&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style2&quot; /&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;버튼을 왜 만들고자 했나면,&lt;/p&gt;
&lt;p&gt;버튼을 통해서 이벤트를 발생시키려고 했거든요.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;이벤트를 발생시켜서 기능적인 면들을 조금씩 테스트 해보고 싶었습니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;오늘은 여기까지,&lt;/p&gt;
&lt;p&gt;다음 포스팅까지 안녕히!&lt;/p&gt;</description>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/46</guid>
      <comments>https://bigdatajessie.tistory.com/46#entry46comment</comments>
      <pubDate>Sun, 1 Nov 2020 16:42:35 +0900</pubDate>
    </item>
    <item>
      <title>어쩌다 C# - (2) MSDN으로 빠르게 C# 익히기</title>
      <link>https://bigdatajessie.tistory.com/43</link>
      <description>&lt;p&gt;나는 시간이 없다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;C#이 주력 언어도 아니다. (언젠가 중요하게 쓰일 일이 있을지는 모르겠으나)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;그래서 나는 속도전을 펼치기로 했다. 빠르고 실용적으로 바로 배울 수 있는 곳&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;바로 &lt;b&gt;MSDN(&lt;a href=&quot;https://docs.microsoft.com/ko-kr/dotnet&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;docs.microsoft.com/ko-kr/dotnet&lt;/a&gt;)&lt;/b&gt;이다&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;이 웹사이트는 MS에서 공식적으로 지원하는 사이트이며 A-Z로 빠르게 C#코딩을 배울 수 있다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&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;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;897&quot; data-filename=&quot;blob&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cGNKdF/btqKv7HMHn9/E0qVRiKUvP7esknvYKqVKK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cGNKdF/btqKv7HMHn9/E0qVRiKUvP7esknvYKqVKK/img.png&quot; data-alt=&quot;https://docs.microsoft.com/ko-kr/dotnet&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cGNKdF/btqKv7HMHn9/E0qVRiKUvP7esknvYKqVKK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcGNKdF%2FbtqKv7HMHn9%2FE0qVRiKUvP7esknvYKqVKK%2Fimg.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;897&quot; data-filename=&quot;blob&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;https://docs.microsoft.com/ko-kr/dotnet&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>C# 배우기</category>
      <category>C# 속성</category>
      <category>C# 시작</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/43</guid>
      <comments>https://bigdatajessie.tistory.com/43#entry43comment</comments>
      <pubDate>Thu, 8 Oct 2020 22:37:36 +0900</pubDate>
    </item>
    <item>
      <title>왜 대한민국에서는 Qlik Sense 보다 Qlik View를 더 선호할까?</title>
      <link>https://bigdatajessie.tistory.com/40</link>
      <description>&lt;p&gt;안녕하세요,&lt;/p&gt;
&lt;p&gt;Qlik으로 밥먹고 사는 제씨입니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;대세는 Self-BI로 돌아선지 오래이고,&lt;/p&gt;
&lt;p&gt;이미 시장은 Tableau와 Power BI, Qlik Sense 와 같은 제품들의 군웅할거가 진행되어 있습니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;하지만 몇 해를 Qlik으로 여러 고객사에서 프로젝트를 해오면서,&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR'; color: #009a87;&quot;&gt;&lt;b&gt;고객들이 두 제품을 비교하다가 결국엔 QlikView로 돌아서는 것을 많이 경험했습니다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;세계적으로 대세가 Qlik Sense인데, 왜 한국에서만 QlikView를 선호하는 걸까요?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&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;h3 data-ke-size=&quot;size23&quot;&gt;&lt;u&gt;1. 정형화된 보고 방식&lt;/u&gt;&lt;/h3&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;솔루션을 구매하는 기업은 보통 규모가 큰 편입니다.&lt;/p&gt;
&lt;p&gt;제가 구축했던 기업은 모두 중견 이상은 되었던 것 같네요.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span style=&quot;color: #f89009;&quot;&gt;그런 기업들은 이미 자신들의 시스템이 어느 정도 구축되어 있으며,&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span style=&quot;color: #f89009;&quot;&gt;보고체계와 방법들이 규칙처럼 정해져 있습니다.&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;하지만 Qlik Sense는 사용자가 직접 만들어서 사용하는 시각화 툴이죠?&lt;/p&gt;
&lt;p&gt;그래서 정형화된 보고에는 맞지 않는 것입니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&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;h3 data-ke-size=&quot;size23&quot;&gt;&lt;u&gt;2. IT와 현업 사이의 현격한 간격&lt;/u&gt;&lt;/h3&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;큰 기업일수록 IT 또는 전산팀이 잘 꾸려져 있는 것 같습니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;그래서 경영관리 또는 각 현업들은 IT적인 부분에 있어서 이들의 지원을 받는 것을 더 선호합니다.&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #f89009;&quot;&gt;&lt;b&gt;바꿔말하자면, 현업이 직접 IT 툴을 다루는 것을 아직 불필요하다고 생각하는 것 같습니다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;어쩌면 문과, 이과로 나누어 기계나 메커니즘이라면 자신의 것이 아니라고 생각하게 만든 교육환경도&lt;/p&gt;
&lt;p&gt;무관하지 않다고 생각이 드네요.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;어찌 되었거나 큰 기업에서 현업들에게 Qlik Sense는 자유로운 데이터의 놀이터라는 개념보다,&lt;/p&gt;
&lt;p&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;h3 data-ke-size=&quot;size23&quot;&gt;&lt;u&gt;3. 결국은 EIS&lt;/u&gt;&lt;/h3&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;결국에 큰 기업은 &lt;b&gt;EIS(Executive Information System)&lt;/b&gt;를 원합니다.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span style=&quot;color: #f89009;&quot;&gt;즉 임원에게 보고할 수 있는 자료를 만들 수 있는 툴, 그리고 회의를 할 수 있도록 지원하는 큰 화면,&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span style=&quot;color: #f89009;&quot;&gt;짧은 간격으로 모니터링할 수 있는 간편하고 화면을 원하는 것 같습니다.&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;게다가 Qlik Sense는 섬세하게 만들고 싶다면, 디자인의 한계도 명확하다보니,&lt;/p&gt;
&lt;p&gt;QlikView의 PPT같은 디자인 자유도를 더 선호하기도 합니다.&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #666666;&quot;&gt;(임원들께서는&lt;u&gt; 아름다운 그래프를 원하시는데(자신들의 입맛에 맞는)&lt;/u&gt; Qlik Sense는 그걸 다 맞추긴 어렵겠죠ㅠㅠ)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;물론 Qlik Sense도 여타 개발 기술이 있다면 더욱 화려하게 만들 수 있겠으나,&lt;/p&gt;
&lt;p&gt;추가적인 기술지원이 붙어야하므로 오히려 QlikView보다 어려울 겁니다.&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;p&gt;이상으로 대한민국에서 QlikView가 더 선호되는 이유를 살펴보았습니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;결국 대세는 Data Literacy를 성장시키는 방향으로 흘러가게 될 것입니다.&lt;/p&gt;
&lt;p&gt;아마 QlikView를 사용하고 유지보수 하다가 보면,&lt;/p&gt;
&lt;p&gt;자신들이 보고자 하는 화면을 자유롭게 만들 수 있는 Qlik Sense의 필요성을 느끼기도 하겠지요&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;결국 문화의 차이인 것 같습니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;이상 제씨였습니다:)&lt;/p&gt;
&lt;p&gt;감사합니다.&lt;/p&gt;</description>
      <category>Data/Qlik</category>
      <category>Difference between QlikView QlikSense</category>
      <category>Qlik 제품 차이</category>
      <category>QlikSense</category>
      <category>QlikSense QlikView 차이</category>
      <category>Qlikview</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/40</guid>
      <comments>https://bigdatajessie.tistory.com/40#entry40comment</comments>
      <pubDate>Mon, 7 Sep 2020 22:24:02 +0900</pubDate>
    </item>
    <item>
      <title>R) lapply와 sapply의 차이</title>
      <link>https://bigdatajessie.tistory.com/39</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;lapply()&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;입력값으로 vector 또는 list를 받아 list를 반환한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;즉 vector를 넣든, list를 넣든 결과값으로 list 형식의 자료형으로 return 해준다.&lt;/p&gt;
&lt;p&gt;그리고 이 list자료를 다시 &lt;b&gt;vector&lt;/b&gt;로 바꾸기 위해서는 &lt;b&gt;unlist&lt;/b&gt;를 사용해주면 된다.&lt;/p&gt;
&lt;pre id=&quot;code_1587643579367&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;a &amp;lt;- lapply(1:10, function(x) x*2)
unlist(a)


&amp;gt; typeof(a)
[1] &quot;list&quot;

&amp;gt; typeof(unlist(a))
[1] &quot;double&quot;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Sapply()&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;lapply는 list를 반환하지만 sapply는 &lt;b&gt;matrix&lt;/b&gt; 또는 &lt;b&gt;vector&lt;/b&gt;로 반환한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;pre id=&quot;code_1587643803117&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt; zz &amp;lt;- sapply(iris[,1:4], function(x){ x*5 })
&amp;gt; typeof(zz)
[1] &quot;double&quot;
&amp;gt; class(zz)
[1] &quot;matrix&quot;


&amp;gt; head(zz)
     Sepal.Length Sepal.Width Petal.Length Petal.Width
[1,]         25.5        17.5          7.0           1
[2,]         24.5        15.0          7.0           1
[3,]         23.5        16.0          6.5           1
[4,]         23.0        15.5          7.5           1
[5,]         25.0        18.0          7.0           1
[6,]         27.0        19.5          8.5           2


&amp;gt; zzz &amp;lt;- sapply(iris[1,1:4], function(x){ x*5 })
&amp;gt; typeof(zzz)
[1] &quot;double&quot;
&amp;gt; class(zzz)
[1] &quot;numeric&quot;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;기본적으로 iris 데이터는 data.frame이지만, matrix형태로 반환해주는 것을 알 수 있다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;결론은, 반환하려는 자료형의 형태에 따라 lapply와 sapply를 다르게 사용해주면 된다.&lt;/p&gt;</description>
      <category>Data/R</category>
      <category>lapply sapply 차이</category>
      <category>lapply()</category>
      <category>R sapply() lapply() 차이</category>
      <category>R 고수</category>
      <category>R 잘하고 싶다</category>
      <category>sapply()</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/39</guid>
      <comments>https://bigdatajessie.tistory.com/39#entry39comment</comments>
      <pubDate>Thu, 23 Apr 2020 21:12:23 +0900</pubDate>
    </item>
    <item>
      <title>R) class(), typeof()의 차이</title>
      <link>https://bigdatajessie.tistory.com/38</link>
      <description>&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;span&gt;&lt;b&gt;typeof() : 원시 자료형 (R 에서의)&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span&gt;먼저 원시 자료형이라는 건, R에서 취급하는 일반적인 자료형의 모든 형태를 지칭한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;예를 들어,&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;NULL: 데이터가 없는 경우&lt;/li&gt;
&lt;li&gt;Logical: 불리언, 참 또는 거짓&lt;/li&gt;
&lt;li&gt;Int: 정수&lt;/li&gt;
&lt;li&gt;Double: 부동소수점 실수&lt;/li&gt;
&lt;li&gt;Complex: 복소수&lt;/li&gt;
&lt;li&gt;Character: 문자열&lt;/li&gt;
&lt;li&gt;List: 리스트&lt;/li&gt;
&lt;li&gt;Closure: 함수&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;이런 것들을 자료형이라고 부른다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;그래서 가장 기본적인 데이터인 iris의 type을 물어보면 다음과 같은 값이 return된다.&lt;/p&gt;
&lt;pre id=&quot;code_1587642479413&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;typeof(iris)
&quot;list&quot;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;b&gt;그러면 이건 Class()와 뭐가 다른 걸까?&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;&lt;span&gt;class() : R 객체지향 관점에서의 자료형&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;b&gt;R 에서 클래스는 변수가 가지는 속성의 하나이다. 따라서 자료형과 클래스는 같은 값을 가지지 않을 수도 있다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;특히 다음과 같은 점에 주의한다.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;부동소수점 실수의 자료형은 double 이지만 클래스는 numeric 이다.&lt;/li&gt;
&lt;li&gt;함수의 자료형은 closure 이지만 클래스는 function 이다.&lt;/li&gt;
&lt;li&gt;matrix, data.frame 등의 클래스 객체나 사용자 정의 클래스의 자료형은 list 이다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;출처: &lt;a href=&quot;https://datascienceschool.net/view-notebook/0a66597ee82f464b9e2015e41cff8205/&quot;&gt;https://datascienceschool.net/view-notebook/0a66597ee82f464b9e2015e41cff8205/&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1587642650218&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Data Science School&quot; data-og-description=&quot;Data Science School is an open space!&quot; data-og-host=&quot;datascienceschool.net&quot; data-og-source-url=&quot;https://datascienceschool.net/view-notebook/0a66597ee82f464b9e2015e41cff8205/&quot; data-og-url=&quot;https://datascienceschool.net/&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cbMFmd/hyFLJkhcov/lY7vphbHUBbSktZK4hQ9sk/img.jpg?width=1981&amp;amp;height=2048&amp;amp;face=0_0_1981_2048,https://scrap.kakaocdn.net/dn/cpLB0E/hyFLMVBOu6/jkjJerdozIxvurvOqhkJL1/img.png?width=200&amp;amp;height=200&amp;amp;face=0_0_200_200,https://scrap.kakaocdn.net/dn/bfIUFL/hyFMpR0Dzj/hBTrz5aHkbUNRbNgtgJnO0/img.jpg?width=200&amp;amp;height=200&amp;amp;face=0_0_200_200&quot;&gt;&lt;a href=&quot;https://datascienceschool.net/view-notebook/0a66597ee82f464b9e2015e41cff8205/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://datascienceschool.net/view-notebook/0a66597ee82f464b9e2015e41cff8205/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cbMFmd/hyFLJkhcov/lY7vphbHUBbSktZK4hQ9sk/img.jpg?width=1981&amp;amp;height=2048&amp;amp;face=0_0_1981_2048,https://scrap.kakaocdn.net/dn/cpLB0E/hyFLMVBOu6/jkjJerdozIxvurvOqhkJL1/img.png?width=200&amp;amp;height=200&amp;amp;face=0_0_200_200,https://scrap.kakaocdn.net/dn/bfIUFL/hyFMpR0Dzj/hBTrz5aHkbUNRbNgtgJnO0/img.jpg?width=200&amp;amp;height=200&amp;amp;face=0_0_200_200');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;Data Science School&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;Data Science School is an open space!&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;datascienceschool.net&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;즉 흔히 헷갈릴 수 있는 게 list()나 data.frame이 같은 선상에 있는 자료형이라고 생각하는 것이다.&lt;/p&gt;
&lt;p&gt;하지만 data.frame이나 matrix는 엄연히 말하면 객체이며 다음의 iris 예시에서 이렇게 확인할 수 있다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1587642764520&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;class(iris)
&quot;data.frame&quot;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;정리하자면, Iris는 list의 자료형을 가진 data.frame 객체이다.&lt;/p&gt;</description>
      <category>Data/R</category>
      <category>class in R</category>
      <category>class()</category>
      <category>class와 type of 차이</category>
      <category>r</category>
      <category>R class typeof difference</category>
      <category>type of in R</category>
      <category>typeof()</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/38</guid>
      <comments>https://bigdatajessie.tistory.com/38#entry38comment</comments>
      <pubDate>Thu, 23 Apr 2020 20:54:49 +0900</pubDate>
    </item>
    <item>
      <title>R) apply 정리</title>
      <link>https://bigdatajessie.tistory.com/37</link>
      <description>&lt;p&gt;Apply 공부를 하다보니, 이게 다양한 종류가 있는 함수라는 걸 알게 되었다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;정적으로 설명을 적자면,&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;apply() 제품군은 R 기본 패키지와 관련이 있으며 행렬, 배열, 목록 및 데이터 프레임의 데이터 조각을 반복적 인 방식으로 조작하는 함수로 채워져 있다.&lt;/li&gt;
&lt;li&gt;이러한 함수를 사용하면 여러 가지 방식으로 데이터를 교차시킬 수 있으며 루프 구문을 명시적으로 사용하지 않아도 된다.&lt;/li&gt;
&lt;li&gt;입력 목록, 행렬 또는 배열에서 작동하며 하나 이상의 선택적 인수와 함께 명명된 함수를 적용합니다.&lt;/li&gt;
&lt;li&gt;apply () 함수는보다 복잡한 조합의 기초를 형성하며 아주 적은 코드 행으로 작업을 수행하는 데 도움이 된다.&lt;/li&gt;
&lt;li&gt;보다 구체적으로, 패밀리는&lt;u&gt; apply(), lapply(), sapply(), vapply(), mapply(), rapply() 및 tapply()&lt;/u&gt; 함수로 구성&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;그 중에서도 오늘은 Apply에 대해서만 집중해보자&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Apply&lt;/h2&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Apply 함수는 특정 구조를 지니는 object 를 입력값으로 받아 인자별 및 그룹별로 함수를 적용하는 것이다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dmieaA/btqDFqGmWDX/cqjf96PcoywS0NAZxo53Y1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dmieaA/btqDFqGmWDX/cqjf96PcoywS0NAZxo53Y1/img.png&quot; data-alt=&quot;https://www.datacamp.com/community/tutorials&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dmieaA/btqDFqGmWDX/cqjf96PcoywS0NAZxo53Y1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdmieaA%2FbtqDFqGmWDX%2Fcqjf96PcoywS0NAZxo53Y1%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;https://www.datacamp.com/community/tutorials&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1587567332773&quot; class=&quot;html xml&quot; style=&quot;display: block; overflow: auto; padding: 15px; color: #383a42; background: #f6f7f8; font-size: 14px; border-radius: 3px; font-family: Menlo, Consolas, Monaco, monospace; border: 1px solid #dddddd; margin: 20px auto 0px; cursor: default; z-index: 1; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;x &amp;lt;- matrix(1:9, c(3,3))
x
# [,1] [,2] [,3]
# [1,]    1    4    7
# [2,]    2    5    8
# [3,]    3    6    9

# apply(array, 1 또는 2, 함수)
# 1:행, 2:열

y &amp;lt;- apply(x, 1, function(x) {5*x })
y
# [,1] [,2] [,3]
# [1,]    5   10   15
# [2,]   20   25   30
# [3,]  &lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Data/R</category>
      <category>apply()</category>
      <category>lapply</category>
      <category>r</category>
      <category>R apply</category>
      <category>R apply 함수</category>
      <category>sapply</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/37</guid>
      <comments>https://bigdatajessie.tistory.com/37#entry37comment</comments>
      <pubDate>Wed, 22 Apr 2020 23:57:43 +0900</pubDate>
    </item>
    <item>
      <title>R에서 폴더 생성하고 csv 파일 저장하기</title>
      <link>https://bigdatajessie.tistory.com/35</link>
      <description>&lt;p&gt;# R에서 폴더를 생성하고 저장하는 방법&lt;/p&gt;
&lt;p&gt;- dir.exists 는 폴더명이 존재하는지 여부를 T,F 형태로 리턴하는 함수&lt;/p&gt;
&lt;p&gt;- dir.create는 작은 따옴표 안의 폴더명으로 폴더명 생성하는 함수&amp;nbsp;&lt;/p&gt;
&lt;p&gt;- ifelse 구문으로 폴더명 확인 후 없으면 create하는 구문 실행&lt;/p&gt;
&lt;p&gt;- write.csv로 해당 루트에 파일 저장&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1586956589961&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;ifelse(dir.exists('폴더명'), F, dir.create('폴더명'))
write.csv('저장하고 싶은 파일,폴더명/저장할 파일명.csv')
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;ifelse 구문을 통해 전체 구ㅁ&lt;/p&gt;</description>
      <category>Data/R</category>
      <category>r</category>
      <category>r로 파일 만들기</category>
      <category>r로 폴더만들기</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/35</guid>
      <comments>https://bigdatajessie.tistory.com/35#entry35comment</comments>
      <pubDate>Thu, 16 Apr 2020 00:05:33 +0900</pubDate>
    </item>
    <item>
      <title>DBeaver를 사용한 Postgre SQL</title>
      <link>https://bigdatajessie.tistory.com/34</link>
      <description>&lt;p&gt;&amp;nbsp;DB 사용하는 사람들 사이에서는 핫한 Client라고 해서 한 번 받아보기로 했다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;- 사용 후기 모음&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;a href=&quot;https://okky.kr/article/631704&quot;&gt;https://okky.kr/article/631704&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1586571721978&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;article&quot; data-og-title=&quot;OKKY | DBeaver 무료 DB Client&quot; data-og-description=&quot;요즘 Postgresql 작업을 하고 있는데, 적당한 클라이언트 찾다가 발견했습니다. eclipse plugin도 지원하고, 깔끔하고 좋습니다. https://dbeaver.io&quot; data-og-host=&quot;okky.kr&quot; data-og-source-url=&quot;https://okky.kr/article/631704&quot; data-og-url=&quot;https://okky.kr/article/631704&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/sqc3I/hyFCj6B1AE/VbMJBtaYkrZ16FxOtGohh0/img.png?width=200&amp;amp;height=200&amp;amp;face=0_0_200_200,https://scrap.kakaocdn.net/dn/5OtvD/hyFCrjiwVl/qh944ltCZRcvJ2DTLaKXmK/img.png?width=200&amp;amp;height=200&amp;amp;face=0_0_200_200,https://scrap.kakaocdn.net/dn/oGzJG/hyFDy19NMY/wo4iGgsMAp5AkLb6Eph900/img.png?width=821&amp;amp;height=471&amp;amp;face=0_0_821_471&quot;&gt;&lt;a href=&quot;https://okky.kr/article/631704&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://okky.kr/article/631704&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/sqc3I/hyFCj6B1AE/VbMJBtaYkrZ16FxOtGohh0/img.png?width=200&amp;amp;height=200&amp;amp;face=0_0_200_200,https://scrap.kakaocdn.net/dn/5OtvD/hyFCrjiwVl/qh944ltCZRcvJ2DTLaKXmK/img.png?width=200&amp;amp;height=200&amp;amp;face=0_0_200_200,https://scrap.kakaocdn.net/dn/oGzJG/hyFDy19NMY/wo4iGgsMAp5AkLb6Eph900/img.png?width=821&amp;amp;height=471&amp;amp;face=0_0_821_471');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;OKKY | DBeaver 무료 DB Client&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;요즘 Postgresql 작업을 하고 있는데, 적당한 클라이언트 찾다가 발견했습니다. eclipse plugin도 지원하고, 깔끔하고 좋습니다. https://dbeaver.io&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;okky.kr&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&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;h3 data-ke-size=&quot;size23&quot;&gt;&amp;lt;장점&amp;gt;&lt;/h3&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;1.&amp;nbsp;무료에 오픈 소스라는점&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;2. 다양한 SQL과 연동하여 사용가능하다는 점&lt;span style=&quot;color: #333333;&quot;&gt;(오라클, MS-SQL, MySQL, PostgreSQL, MariaDB 등)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&amp;nbsp;- Windows, Mac, Linux 의 환경에서 사용 가능&lt;/span&gt;&lt;b&gt;&lt;br /&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;3. 비버가 귀여움&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; width=&quot;189&quot; height=&quot;189&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bC6CVT/btqDn0VttDf/9i1b345LGBJv1k7ftfUIh1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bC6CVT/btqDn0VttDf/9i1b345LGBJv1k7ftfUIh1/img.png&quot; data-alt=&quot;요즘은 마스크도 씌웠다... 커엽&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bC6CVT/btqDn0VttDf/9i1b345LGBJv1k7ftfUIh1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbC6CVT%2FbtqDn0VttDf%2F9i1b345LGBJv1k7ftfUIh1%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; width=&quot;189&quot; height=&quot;189&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;요즘은 마스크도 씌웠다... 커엽&lt;/figcaption&gt;
&lt;/figure&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;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&amp;lt;설치&amp;gt;&lt;/h3&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;1. 사이트 접속 &lt;a href=&quot;https://dbeaver.io/&quot;&gt;https://dbeaver.io/&lt;/a&gt;&lt;/b&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1586571902007&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;website&quot; data-og-title=&quot;DBeaver Community | Free Universal Database Tool&quot; data-og-description=&quot;DBeaver Universal Database Tool Free multi-platform database tool for developers, database administrators, analysts and all people who need to work with databases. Supports all popular databases: MySQL, PostgreSQL, SQLite, Oracle, DB2, SQL Server, Sybase, &quot; data-og-host=&quot;dbeaver.io&quot; data-og-source-url=&quot;https://dbeaver.io/&quot; data-og-url=&quot;https://dbeaver.io/&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cTfGsN/hyFDvxBF0F/hOgAEXkAnKzdsE41NCtGUK/img.png?width=450&amp;amp;height=220&amp;amp;face=0_0_450_220,https://scrap.kakaocdn.net/dn/bn6BUt/hyFCpTiHHN/Ec25149g0DSd3dF0Hupdkk/img.png?width=450&amp;amp;height=220&amp;amp;face=0_0_450_220,https://scrap.kakaocdn.net/dn/PoDEx/hyFCkxFMnJ/QBBkNNuQb6o5pn8gMlD7Q0/img.png?width=450&amp;amp;height=220&amp;amp;face=0_0_450_220&quot;&gt;&lt;a href=&quot;https://dbeaver.io/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://dbeaver.io/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cTfGsN/hyFDvxBF0F/hOgAEXkAnKzdsE41NCtGUK/img.png?width=450&amp;amp;height=220&amp;amp;face=0_0_450_220,https://scrap.kakaocdn.net/dn/bn6BUt/hyFCpTiHHN/Ec25149g0DSd3dF0Hupdkk/img.png?width=450&amp;amp;height=220&amp;amp;face=0_0_450_220,https://scrap.kakaocdn.net/dn/PoDEx/hyFCkxFMnJ/QBBkNNuQb6o5pn8gMlD7Q0/img.png?width=450&amp;amp;height=220&amp;amp;face=0_0_450_220');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;DBeaver Community | Free Universal Database Tool&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;DBeaver Universal Database Tool Free multi-platform database tool for developers, database administrators, analysts and all people who need to work with databases. Supports all popular databases: MySQL, PostgreSQL, SQLite, Oracle, DB2, SQL Server, Sybase,&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;dbeaver.io&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&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;p&gt;&lt;b&gt;2. OS에 맞춰서 다운로드&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;나는 Windows 64 bit 버전으로 다운로드했다.&lt;/p&gt;
&lt;p&gt;&lt;img style=&quot;text-align: center; caret-color: transparent; letter-spacing: 0px;&quot; src=&quot;https://k.kakaocdn.net/dn/bYYWhj/btqDn2sdLh8/JuA4rOgrMaeYny2a3fJXUK/img.png&quot; data-image-src=&quot;https://k.kakaocdn.net/dn/bYYWhj/btqDn2sdLh8/JuA4rOgrMaeYny2a3fJXUK/img.png&quot; data-filename=&quot;DBeaver설치2.PNG&quot; data-origin-width=&quot;958&quot; data-origin-height=&quot;861&quot; /&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;p&gt;&lt;b&gt;3. 원하는 SQL 연결&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;- 나는 Postgre를 연결하기로 했으니 연결해본다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bvN45T/btqDn1UnNZf/Mb7GKWlQVqXFmaLcNnPbb0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bvN45T/btqDn1UnNZf/Mb7GKWlQVqXFmaLcNnPbb0/img.png&quot; data-alt=&quot;DBeaver와 Postgre SQL 연결&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bvN45T/btqDn1UnNZf/Mb7GKWlQVqXFmaLcNnPbb0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbvN45T%2FbtqDn1UnNZf%2FMb7GKWlQVqXFmaLcNnPbb0%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;DBeaver와 Postgre SQL 연결&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;4. DB를 깔 때 만들었던 비밀번호와 PortNumber를 쳐서 넣어준다.&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;- 보통 포트넘버는 알아서 잡는 것 같다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;- Postgre를 캡쳐하려고 했는데 이미 연결해서 ㅠㅠ 마리아DB 화면 캡쳐&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bS1Zq7/btqDn080YS3/7XtmxkwdV3Ob6kRVQGwq8k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bS1Zq7/btqDn080YS3/7XtmxkwdV3Ob6kRVQGwq8k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bS1Zq7/btqDn080YS3/7XtmxkwdV3Ob6kRVQGwq8k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbS1Zq7%2FbtqDn080YS3%2F7XtmxkwdV3Ob6kRVQGwq8k%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;5. 연결완료☆&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/d9Hedr/btqDmmybr44/hU76QbcpEapKVKwtZQbfwk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/d9Hedr/btqDmmybr44/hU76QbcpEapKVKwtZQbfwk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/d9Hedr/btqDmmybr44/hU76QbcpEapKVKwtZQbfwk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fd9Hedr%2FbtqDmmybr44%2FhU76QbcpEapKVKwtZQbfwk%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;확실히 UI도 깔끔하고 내 정서에 맞는다.&lt;/p&gt;
&lt;p&gt;SQL Developer는 너무 딱딱한 느낌이 있어서 정감이 안가는데, 요녀석은 하얗고 아기자기한 게 개발할 맛이 나는 것 같다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;이상 DBeaver 포스팅 끝!&lt;/p&gt;</description>
      <category>Data/Postgre SQL</category>
      <category>DBeaver</category>
      <category>DBeaver설치</category>
      <category>DBeaver와 SQL 연결</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/34</guid>
      <comments>https://bigdatajessie.tistory.com/34#entry34comment</comments>
      <pubDate>Sat, 11 Apr 2020 11:38:35 +0900</pubDate>
    </item>
    <item>
      <title>QlikView와 QlikSense의 차이</title>
      <link>https://bigdatajessie.tistory.com/32</link>
      <description>&lt;p&gt;안녕하세요 제씨입니다.&lt;/p&gt;
&lt;p&gt;저는 현장에서 Qlik툴을 이용해서 고객사에서 프로젝트를 하고 있습니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bSqEbl/btqCUbwIf8R/jTvC2Fx9MC2scFzZ0PiPsK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bSqEbl/btqCUbwIf8R/jTvC2Fx9MC2scFzZ0PiPsK/img.png&quot; data-alt=&quot;Qlik&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bSqEbl/btqCUbwIf8R/jTvC2Fx9MC2scFzZ0PiPsK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbSqEbl%2FbtqCUbwIf8R%2FjTvC2Fx9MC2scFzZ0PiPsK%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Qlik&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;그래서 현장에서 목소리를 들어보면&lt;/p&gt;
&lt;p&gt;Qlik에서 제공하는 이 두 가지 툴에 대해 궁금증이 많이 있으세요&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;그래서 오늘은 이 두 가지 툴을 비교하는 블로깅을 해보고자 합니다 :-)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;1. QlikSense와 QlikView의 공통점&lt;/h2&gt;
&lt;p&gt;이 두 제품은 한 회사에서 만든 제품이므로 엔진 측면에서 공통적인 분모를 가져갑니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/zrt8z/btqCUxfdQv7/Jb1PojWc0py1dAi5Wv6dOk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/zrt8z/btqCUxfdQv7/Jb1PojWc0py1dAi5Wv6dOk/img.png&quot; data-alt=&quot;BI에서 Qlik의 역할&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/zrt8z/btqCUxfdQv7/Jb1PojWc0py1dAi5Wv6dOk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fzrt8z%2FbtqCUxfdQv7%2FJb1PojWc0py1dAi5Wv6dOk%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;BI에서 Qlik의 역할&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;먼저 위의 구조도를 보시면 이해에 도움이 될까하여 올립닏.&lt;/p&gt;
&lt;p&gt;Qlik은 기존 BI가 담당하던 여러 부분을 저렇게 하나로 묶어서 제공합니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;ETL&lt;/b&gt;(Extract, Transform, Load)에서부터 &lt;b&gt;마트구성&lt;/b&gt;, 그리고 &lt;b&gt;시각화&lt;/b&gt;까지 말이지요&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;위에 언급한 전반적인 기능은 두 제품이 모두 공유합니다.&lt;/p&gt;
&lt;p&gt;그리고 Qlik 엔진이 가지고 있&lt;b&gt;는 In-Memory 성능을 통한 속도의 장점&lt;/b&gt;,&lt;/p&gt;
&lt;p&gt;&lt;b&gt;QVD 마트를 통한 데이터 압축&lt;/b&gt;을 포함해서요.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;u&gt;&lt;b&gt;그럼 이 두 제품이 각각 나뉜 이유가 무엇일까요?&lt;/b&gt;&lt;/u&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;저는 그 가장 큰 이유로 &lt;b&gt;비즈니스가 전반적으로 Agile형태로 바뀌었기 때문&lt;/b&gt;이라고 생각합니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;기존의 BI툴은 의사결정자를 위한 것이었습니다.&lt;/p&gt;
&lt;p&gt;그들이 보고자 하는 지표들은 정해져 있었죠&lt;/p&gt;
&lt;p&gt;그 회사의 KPI, 매출현황, 이익현황, 또는 각 제품별 분석 등으로 말이지요&lt;/p&gt;
&lt;p&gt;다시 말하면, 한 번 만들어놓으면 그것을 다시 힘들여 제작할 필요가 적었습니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;하지만 지금은 어떤가요?&lt;/p&gt;
&lt;p&gt;소비자가 빠르게 변하고, 각 기업은 빠르게 변화하는 시장환경과 내부상황을 파악해야 합니다.&lt;/p&gt;
&lt;p&gt;즉 기업은 빠르게 분석할 수 있는 환경을 원합니다.&lt;/p&gt;
&lt;p&gt;하지만 QlikView라는 툴보다는 QlikSense 툴이 이런 빠른 방식의 분석에 조금 더 용이합니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;왜냐하면 &lt;u&gt;&lt;b&gt;Qlik Sense는 보다 사용자 편의를 고려한 제품&lt;/b&gt;&lt;/u&gt;이거든요!&lt;/p&gt;
&lt;p&gt;다시 말해 사용자, 즉 해당 분석을 담당하는 구성원(경영자, 의사결정자가 굳이 아니더라도)이 직접 시각화를 구성하고&lt;/p&gt;
&lt;p&gt;데이터를 묶을 수 있는 전반적인 BI의 과정을 손쉽게 구현하도록 만든 제품이라는 말입니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;2. QlikView vs QlikSense&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/XMBvc/btqCRzrLAe6/AbF9R3YC5Sa8KXla1jEbjk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/XMBvc/btqCRzrLAe6/AbF9R3YC5Sa8KXla1jEbjk/img.png&quot; data-alt=&quot;QlikView&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/XMBvc/btqCRzrLAe6/AbF9R3YC5Sa8KXla1jEbjk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FXMBvc%2FbtqCRzrLAe6%2FAbF9R3YC5Sa8KXla1jEbjk%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;QlikView&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;먼저 QlikView는 현재 12 Version까지 출시가 되었습니다.&lt;/p&gt;
&lt;p&gt;QlikView2가 1996에 출시되었다고 하니, BI툴이 하나의 브랜드를 가지고 25년을 살아남고 있는거네요.(이번 조사에서 알게 되었습니다.) 그리고 QlikView12가 2015년에 출시되었고, 현재 버전업을 거쳐 2019년 SR2버전을 마지막으로 새로운 업데이트는 없습니다. 왜냐하면 지금은 Qlik Sense라는 제품에 회사가 주력하고 있기 때문이지요 :)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;QlikView는 개발자 친화적입니다.&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;원하는대로 구현이 가능하고, Off-line에서도 분석을 수행할 수 있어서 매우 편합니다.&lt;/p&gt;
&lt;p&gt;그리고 간단한 시각화정도는 desktop버전을 받아서 손쉽게 수행할 수도 있고요.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;다만 디자인적 요소가 바뀌는 시대의 흐름과 맞지 않습니다.&lt;/p&gt;
&lt;p&gt;QlikSense의 화면을 보실까요?&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;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cjBoYJ/btqCSgMmyLb/PucRK132nvKxqxVbhWOZ90/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cjBoYJ/btqCSgMmyLb/PucRK132nvKxqxVbhWOZ90/img.png&quot; data-alt=&quot;QlikSense 대시보드 예시&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cjBoYJ/btqCSgMmyLb/PucRK132nvKxqxVbhWOZ90/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcjBoYJ%2FbtqCSgMmyLb%2FPucRK132nvKxqxVbhWOZ90%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;QlikSense 대시보드 예시&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/p9fgF/btqCSXZ1j8d/EMabJEKQKZTPWX5LLsSBaK/img.gif&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/p9fgF/btqCSXZ1j8d/EMabJEKQKZTPWX5LLsSBaK/img.gif&quot; data-alt=&quot;QlikSene 예시 (출처: Qlik 홈페이지)&amp;amp;amp;nbsp;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/p9fgF/btqCSXZ1j8d/EMabJEKQKZTPWX5LLsSBaK/img.gif&quot; srcset=&quot;https://blog.kakaocdn.net/dn/p9fgF/btqCSXZ1j8d/EMabJEKQKZTPWX5LLsSBaK/img.gif&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;QlikSene 예시 (출처: Qlik 홈페이지)&amp;nbsp;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;어떤가요?&lt;/p&gt;
&lt;p&gt;조금 더 단순하면서 깔끔한 느낌을 주지 않나요?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;QlikSense는 2014년에 첫 출시를 하여 현재까지 Qlik이 주력해오고 있는 제품입니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;장점은 명확합니다.&lt;/p&gt;
&lt;p&gt;현대적인 디자인과 Grid를 통해 디자인과 그래프 배치 측면에서 사용자 편의성이 극대화 되었습니다.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;QlikView보다 오히려 개발적인 측면에서는 선택지를 줄였는데요, 이게 바로 QlikSense의 핵심입니다.&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;사용자가 분석을 하기 위해 가장 필요한 분석요소만 남겨놓고, 나머지는 과감히 버린 것이지요.&lt;/p&gt;
&lt;p&gt;물론 기존의 QlikView도 충분히 교육을 통해서 사용자가 분석하고 사용할 수 있도록 만들어 놓았습니다만,&lt;/p&gt;
&lt;p&gt;QlikSense는 그 장점을 부각하여 제작한 툴인 것 같습니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;따라서 QlikView가 구현하던 것들 중 일부가 QlikSense에서 구현되지 않는 경우가 있습니다.(반대상황도 종종 있습니다.)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;그래프의 다양성과 확장성 측면에서 QlikSense가 조금 더 우세를 가져갑니다.&lt;/p&gt;
&lt;p&gt;요즘들어 많이 쓰이는 fancy한 그래프들(Sankey Diagram, Waterfall barchart, Geoanaytics)을 적극적으로 지원하지요.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;사실 이 외에도 다양한 차이점이 있습니다만,&lt;/p&gt;
&lt;p&gt;툴을 선택하실 때에 필요한 정보는 여기까지만 해도 충분하고 생각이 됩니다 :)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;요약하자면,&lt;/p&gt;
&lt;p&gt;QlikView는 오래되었지만 오프라인에서 사용가능하고, 개발자 친화적이며, 심도 깊은 분석을 제공하는 제품이며&lt;/p&gt;
&lt;p&gt;QlikSense는 현대적인 UI/UX, 온라인을 통해서만 가능하고, 사용자 친화적이며 확장성 높은 제품&lt;/p&gt;
&lt;p&gt;이라고 정리해볼 수 있겠네요 :)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;더 자세하게 궁금한 점은 댓글로 남겨주시면 추가 답변 달도록 하겠습니다.&lt;/p&gt;
&lt;p&gt;그럼 오늘도 좋은 하루 보내세요&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Data/Qlik</category>
      <category>BI 구조</category>
      <category>Qlik 구조</category>
      <category>QlikSense</category>
      <category>qlikvie qliksense 차이</category>
      <category>Qlikview</category>
      <category>qlikview qliksense differnce</category>
      <category>Qlik툴 준비</category>
      <category>클릭뷰</category>
      <category>클릭뷰 클릭센스 차이</category>
      <category>클릭센스</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/32</guid>
      <comments>https://bigdatajessie.tistory.com/32#entry32comment</comments>
      <pubDate>Sun, 22 Mar 2020 10:32:36 +0900</pubDate>
    </item>
    <item>
      <title>Decision Tree Regression</title>
      <link>https://bigdatajessie.tistory.com/31</link>
      <description>&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;Decision Tree( 의사결정 나무 ) Model&lt;/b&gt;&lt;/h3&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;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;모델&lt;/b&gt;&lt;/h4&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p&gt;스무 고개처럼 일정한 기준을 질문으로 제시하였을 때, '예' 혹은 '아니오'로 갈라질 수 있는 결정 모델이다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;아래는 Decision Tree를 설명하는 가장 좋은 이미지&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cNwUiE/btqAJNTneKc/CQbBNG3CsVgGTSW1yKgcoK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cNwUiE/btqAJNTneKc/CQbBNG3CsVgGTSW1yKgcoK/img.png&quot; data-alt=&quot;출처 : 위키백과&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cNwUiE/btqAJNTneKc/CQbBNG3CsVgGTSW1yKgcoK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcNwUiE%2FbtqAJNTneKc%2FCQbBNG3CsVgGTSW1yKgcoK%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;출처 : 위키백과&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;타이타닉 호의 생존율을 구할 때 사용하는 Decision Tree의 예이다.&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;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;Decision Tree Regression&lt;/h4&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b3VXPr/btqAMkvtDq7/gnHzp2SVs3wX5hocbyj1pk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b3VXPr/btqAMkvtDq7/gnHzp2SVs3wX5hocbyj1pk/img.png&quot; data-alt=&quot;출처 :&amp;amp;amp;nbsp;https://gdcoder.com/decision-tree-regressor-explained-in-depth/&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b3VXPr/btqAMkvtDq7/gnHzp2SVs3wX5hocbyj1pk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb3VXPr%2FbtqAMkvtDq7%2FgnHzp2SVs3wX5hocbyj1pk%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;출처 :&amp;nbsp;https://gdcoder.com/decision-tree-regressor-explained-in-depth/&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;보통 Classification 모델을 쉽게 떠올리는데, 위 그림처럼 관측치에 대한 Regression도 가능하다.&lt;/p&gt;
&lt;p&gt;다만 Continusous한 모델이 아니므로 회귀선을 그렸을 경우 아래처럼 직각형의 그래프가 나오게 된다&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vAeTb/btqAJwRUlcV/uwt6WhvXkJ5hDxjw46Yskk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vAeTb/btqAJwRUlcV/uwt6WhvXkJ5hDxjw46Yskk/img.png&quot; data-alt=&quot;Random Forest Regression Model&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vAeTb/btqAJwRUlcV/uwt6WhvXkJ5hDxjw46Yskk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvAeTb%2FbtqAJwRUlcV%2Fuwt6WhvXkJ5hDxjw46Yskk%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Random Forest Regression Model&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;위의 예제는 Random Forest의 그래프이다. 일반적인 Decision Tree보다 굴곡(꺾인 점)이 더 많다.&lt;/p&gt;
&lt;p&gt;Random Forest는 Decision Tree를 모아서 그 결과치를 평균낸 모델이라고 해석하면 된다.&lt;/p&gt;</description>
      <category>Data/Machine Learning</category>
      <category>Decision Tree</category>
      <category>machine learning</category>
      <category>머신러닝</category>
      <category>의사결정나무</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/31</guid>
      <comments>https://bigdatajessie.tistory.com/31#entry31comment</comments>
      <pubDate>Fri, 27 Dec 2019 10:58:01 +0900</pubDate>
    </item>
    <item>
      <title>3. Git입문 - git init(문서 설정하기)</title>
      <link>https://bigdatajessie.tistory.com/30</link>
      <description>&lt;p&gt;&lt;i&gt;※ 본 글은 생활코딩의 '지옥에서 온 Git'을 바탕으로 작성되었습니다. 본 블로그는 쓴이의 복습을 위해 사용됩니다.&lt;/i&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; 기본적으로 Git에서의 명령어를 파악하려면 Git Bash 안에서 'git'이라고 명령어를 쳐보면 된다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;1. 내 위치 파악하기&lt;/b&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1574342091220&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;$ pwd&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;&lt;b&gt;2. 시작하기&lt;/b&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1576501386995&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;git init&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;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;3. 디렉토리 내 파일확인&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;ls -al&lt;/p&gt;
&lt;pre id=&quot;code_1576501436783&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;ls -al&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;마지막 세번 째 줄이 .git이라는 파일이 생성되는데, 이게 바로 '디렉토리'이다.&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;p&gt;&lt;b&gt;4. 파일을 만들고 싶을 때&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;vim f1.txt&lt;/p&gt;
&lt;pre id=&quot;code_1576501513616&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;vim f1.txt&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;이 화면에 들어가서 수정을 하고 싶다면 i를 누르고, 원하는 형식으로 수정을 한다.&lt;/p&gt;
&lt;p&gt;만약 종료하고 싶다면 esc를 누른 후 INSERT 화면에서 빠져나온 후&lt;/p&gt;
&lt;p&gt;:wq를 통해(w는 write를, q는 quit를 각각 상징하는듯?) 빠져나온다.&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;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;5. 만든 파일을 보고 싶을 때&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;ls - al&lt;/p&gt;
&lt;p&gt;cat f1.txt&lt;/p&gt;
&lt;pre id=&quot;code_1576501623141&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;ls - al
cat f1.txt&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;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;6. 내가 만든 파일의 status를 확인하고 싶은 경우 및 status 추가&lt;/p&gt;
&lt;p&gt;git status&lt;/p&gt;
&lt;p&gt;git add f1.txt&lt;/p&gt;
&lt;p&gt;git status&lt;/p&gt;
&lt;pre id=&quot;code_1576501699150&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;git status
git add f1.txt
git status&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;처음 status에서는 tracking이 되지 않는 상황을 확인 하고,&lt;/p&gt;
&lt;p&gt;두 번째 add 코드를 실행한 후&lt;/p&gt;
&lt;p&gt;git이 해당 파일을 정확히 추적하고 있음을 확인&lt;/p&gt;</description>
      <category>Data/Git</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/30</guid>
      <comments>https://bigdatajessie.tistory.com/30#entry30comment</comments>
      <pubDate>Mon, 16 Dec 2019 22:08:58 +0900</pubDate>
    </item>
    <item>
      <title>2. Github 입문 - Git은 무엇인가?</title>
      <link>https://bigdatajessie.tistory.com/29</link>
      <description>&lt;p&gt;&lt;a href=&quot;https://youtu.be/YFNQwo7iTNc&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://youtu.be/YFNQwo7iTNc&lt;/a&gt;&lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;youtube&quot; data-video-url=&quot;https://www.youtube.com/watch?v=YFNQwo7iTNc&amp;amp;feature=youtu.be&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/ziKQf/hyDOZ1w9Oo/S6UMiD4W3c6DIjNB9gQzXk/img.jpg?width=1280&amp;amp;height=720&amp;amp;face=524_182_774_456&quot; data-video-width=&quot;860&quot; data-video-height=&quot;484&quot;&gt;&lt;iframe src=&quot;https://www.youtube.com/embed/YFNQwo7iTNc&amp;amp;amp&quot; width=&quot;860&quot; height=&quot;484&quot; frameborder=&quot;&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p&gt;&lt;b&gt;'니콜라스' 라는 개발자가 이 개념을 너무나 잘 정리했다.&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Git과 GitHub의 관계를 정리하자면, 커피와 커피숍의 관계이다.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;즉 Git은 커피이고, GitHub는 이 커피를 가지고 서비스를 하는 커피숍이다.&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Git은 버전관리시스템이며, 하나의 소스파일을 통해 여러 파일을 통제할 수 있다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;또한 GitHub를 통해 코드를 공유하여 협업할 수 있으며, 누가, 언제, 어디서 이 파일을 열고 어느 부분을 고쳤는지를 확인하고 수정할 수 있다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;또한 Google이나 페이스북, 다양한 거대기업에서 OpenSource로 제공한 코드들이 있는데 이 코드들이 어떻게 작동하고 활용될 수 있는지를 알 수 있는 코딩 생태계의 거대한 바다라고 볼 수 있다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;- 끝 -&lt;/p&gt;</description>
      <category>Data/Git</category>
      <category>Git</category>
      <category>github</category>
      <category>What is Git?</category>
      <category>깃</category>
      <category>깃허브</category>
      <category>깃허브가 뭔가요</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/29</guid>
      <comments>https://bigdatajessie.tistory.com/29#entry29comment</comments>
      <pubDate>Thu, 21 Nov 2019 22:11:47 +0900</pubDate>
    </item>
    <item>
      <title>1. GitHub 입문 - Git 설치하기</title>
      <link>https://bigdatajessie.tistory.com/28</link>
      <description>&lt;p&gt;&lt;i&gt;※ 본 글은 생활코딩의 '지옥에서 온 Git'을 바탕으로 작성되었습니다. 본 블로그는 쓴이의 복습을 위해 사용됩니다.&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;youtube&quot; data-video-url=&quot;https://www.youtube.com/watch?v=JKT9laOAPIs&amp;amp;list=PLuHgQVnccGMA8iwZwrGyNXCGy2LAAsTXk&amp;amp;index=2&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/bVepOE/hyDOQjcY72/NRofMabPUfWnRnFZltdIG0/img.jpg?width=1280&amp;amp;height=720&amp;amp;face=0_0_1280_720&quot; data-video-width=&quot;860&quot; data-video-height=&quot;484&quot;&gt;&lt;iframe src=&quot;https://www.youtube.com/embed/JKT9laOAPIs&amp;amp;amp&quot; width=&quot;860&quot; height=&quot;484&quot; frameborder=&quot;&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption&gt;지옥에서 온 Git - 생활코딩&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. Git 설치 - Window 기준&lt;/h3&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://git-scm.com/&quot;&gt;https://git-scm.com/&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1574341038607&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Git&quot; data-og-description=&quot;&quot; data-og-host=&quot;git-scm.com&quot; data-og-source-url=&quot;https://git-scm.com/&quot; data-og-url=&quot;https://git-scm.com/&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bypuW9/hyDOMHSDzr/IeaPTAEYfDvZzERWmkZV11/img.png?width=778&amp;amp;height=502&amp;amp;face=0_0_778_502&quot;&gt;&lt;a href=&quot;https://git-scm.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://git-scm.com/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bypuW9/hyDOMHSDzr/IeaPTAEYfDvZzERWmkZV11/img.png?width=778&amp;amp;height=502&amp;amp;face=0_0_778_502');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;Git&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;git-scm.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;해당 사이트 접속 후 컴퓨터 사양에 맞는 Git 프로그램 다운로드&lt;/p&gt;
&lt;p&gt;해당 EXE 파일 실행 후 모든 설치를&lt;b&gt; Default&lt;/b&gt;를 기본으로 진행&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2. 다운 후 Window 검색창에서 Git Bash 클릭&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;602&quot; data-origin-height=&quot;639&quot; data-filename=&quot;blob&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cXsWL7/btqzWKI1Eil/NP5QVKYeTLSs6K9qIF6MU1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cXsWL7/btqzWKI1Eil/NP5QVKYeTLSs6K9qIF6MU1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cXsWL7/btqzWKI1Eil/NP5QVKYeTLSs6K9qIF6MU1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcXsWL7%2FbtqzWKI1Eil%2FNP5QVKYeTLSs6K9qIF6MU1%2Fimg.png&quot; data-origin-width=&quot;602&quot; data-origin-height=&quot;639&quot; data-filename=&quot;blob&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Git Bash는 윈도우에서 리눅스나 유닉스에서 사용하는 명령어 체제를 사용할 수 있도록 되어있다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;561&quot; data-origin-height=&quot;341&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c0JYyz/btqzVCY3Lzt/vGSvzXTE8nqvWFrw3w6jkK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c0JYyz/btqzVCY3Lzt/vGSvzXTE8nqvWFrw3w6jkK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c0JYyz/btqzVCY3Lzt/vGSvzXTE8nqvWFrw3w6jkK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc0JYyz%2FbtqzVCY3Lzt%2FvGSvzXTE8nqvWFrw3w6jkK%2Fimg.png&quot; data-origin-width=&quot;561&quot; data-origin-height=&quot;341&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;이어 해당 명령어 창에서 'git'이라고 쳤을 때 아래에 나오는 장황한 글자들이 나오면 설치가 완료된다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;- 끝 -&lt;/p&gt;</description>
      <category>Data/Git</category>
      <category>Git</category>
      <category>github</category>
      <category>생활코딩</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/28</guid>
      <comments>https://bigdatajessie.tistory.com/28#entry28comment</comments>
      <pubDate>Thu, 21 Nov 2019 22:04:03 +0900</pubDate>
    </item>
    <item>
      <title>파이썬 사이킷런에서 model에서 fit and fit_transform의 차이</title>
      <link>https://bigdatajessie.tistory.com/24</link>
      <description>&lt;p&gt;심플하게 얘기하자면&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;fit&lt;/b&gt;은 train_data에서 독립변수들을 통해서 y를 fitting할 때 그대로 사용하면 되는 함수다&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;그래서 regressor.fit()의 모양새가 된다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;하지만 이 훈련된 데이터 모델을 가지고 test_datat에 적용할 때는&lt;b&gt; fit_transform&lt;/b&gt;을 사용해야 한다.&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;u&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&amp;mu;와&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/u&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;u&gt;&amp;sigma;를 train_data에서 가져다 써야하므로 transform&lt;/u&gt; 한다는 개념이다.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;자세한 내용은 아래 내용 참조!&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1569650310328&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Difference between fit and fit_transform in scikit_learn models?&quot; data-og-description=&quot;I am newbie to data science and I do not understand the difference between fit and fit_transform methods in scikit-learn. Can anybody simply explain why we might need to transform data? What doe...&quot; data-og-host=&quot;datascience.stackexchange.com&quot; data-og-source-url=&quot;https://datascience.stackexchange.com/questions/12321/difference-between-fit-and-fit-transform-in-scikit-learn-models&quot; data-og-url=&quot;https://datascience.stackexchange.com/questions/12321/difference-between-fit-and-fit-transform-in-scikit-learn-models&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/d6bxd7/hyC1HAr4UH/UOhaA4R7SFoQrMisixuUyk/img.png?width=316&amp;amp;height=316&amp;amp;face=0_0_316_316&quot;&gt;&lt;a href=&quot;https://datascience.stackexchange.com/questions/12321/difference-between-fit-and-fit-transform-in-scikit-learn-models&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://datascience.stackexchange.com/questions/12321/difference-between-fit-and-fit-transform-in-scikit-learn-models&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/d6bxd7/hyC1HAr4UH/UOhaA4R7SFoQrMisixuUyk/img.png?width=316&amp;amp;height=316&amp;amp;face=0_0_316_316');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;Difference between fit and fit_transform in scikit_learn models?&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;I am newbie to data science and I do not understand the difference between fit and fit_transform methods in scikit-learn. Can anybody simply explain why we might need to transform data? What doe...&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;datascience.stackexchange.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Data/Machine Learning</category>
      <category>fit</category>
      <category>fit_transform</category>
      <category>사이킷런</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/24</guid>
      <comments>https://bigdatajessie.tistory.com/24#entry24comment</comments>
      <pubDate>Sat, 28 Sep 2019 14:59:21 +0900</pubDate>
    </item>
    <item>
      <title>6. Machine Learning  - Polynomial Regression(다항식 회귀) 인트로</title>
      <link>https://bigdatajessie.tistory.com/23</link>
      <description>&lt;p&gt;(Data preprocessing, Linear Regression, Multinomial Regression 등은 이미 공부를 마친 상태이다... 나중에 추가 보완하거나 Data preprocessing Templete을 공유하는 방향으로 보충할 예정 ㅠ_ㅠ)&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;h2 data-ke-size=&quot;size26&quot;&gt;1. Polynomial 회귀란 무엇인가?&lt;/h2&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Polynomial Regression(다항식 회귀)에 대해서 알아보자.&lt;/p&gt;
&lt;p&gt;기본적으로 선형회귀에 대한 내용으로 n차 다항식의 형태를 띈다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; width=&quot;679&quot; height=&quot;308&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/KPbmk/btqyD8eXaHd/ceautDarM5sRORnPwWK511/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/KPbmk/btqyD8eXaHd/ceautDarM5sRORnPwWK511/img.png&quot; data-alt=&quot;Machine Learning A-Z&amp;amp;amp;trade;: Hands-On Python &amp;amp;amp;amp; R In Data Science 중&amp;amp;amp;nbsp;Polynomial Regression Intuition&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/KPbmk/btqyD8eXaHd/ceautDarM5sRORnPwWK511/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FKPbmk%2FbtqyD8eXaHd%2FceautDarM5sRORnPwWK511%2Fimg.png&quot; width=&quot;679&quot; height=&quot;308&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Machine Learning A-Z&amp;trade;: Hands-On Python &amp;amp; R In Data Science 중&amp;nbsp;Polynomial Regression Intuition&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;왜 P&lt;/h3&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&amp;nbsp;&lt;/h3&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;olynomial 회귀를 사용하는가?&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/FQZNl/btqyGIk8DIh/bWWOgrd8F13wNv7gRY0aek/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/FQZNl/btqyGIk8DIh/bWWOgrd8F13wNv7gRY0aek/img.png&quot; data-alt=&quot;위키피디아 &amp;amp;#39;선형회귀&amp;amp;#39;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/FQZNl/btqyGIk8DIh/bWWOgrd8F13wNv7gRY0aek/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FFQZNl%2FbtqyGIk8DIh%2FbWWOgrd8F13wNv7gRY0aek%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;위키피디아 '선형회귀'&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;모든 데이터가 선형적인 모형을 띄면 쉽게 추정이 가능하겠지만&lt;/p&gt;
&lt;p&gt;선형적이지 않은 모양(ex) 위 그림의 1사분면의 모양)으로 데이터가 분포되어 있다면 선형모형은 맞지 않을 것이다.&lt;/p&gt;
&lt;p&gt;이럴 때 &lt;b&gt;다항식 회귀&lt;/b&gt;가 필요하다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bfbXOD/btqyGkLPDBj/kqBg7ZU5FndvKh072DrCq0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bfbXOD/btqyGkLPDBj/kqBg7ZU5FndvKh072DrCq0/img.png&quot; data-alt=&quot;다항형태이면 분포와 맞을 수 있다.&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bfbXOD/btqyGkLPDBj/kqBg7ZU5FndvKh072DrCq0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbfbXOD%2FbtqyGkLPDBj%2FkqBg7ZU5FndvKh072DrCq0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;다항형태이면 분포와 맞을 수 있다.&lt;/figcaption&gt;
&lt;/figure&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;h3 data-ke-size=&quot;size23&quot;&gt;다항식 회귀(Polynomial) vs 다중 회귀(Multinomial)&lt;/h3&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/0TVEp/btqyGcmVs03/pZzv4bt7sskFwd0aFM7pm0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/0TVEp/btqyGcmVs03/pZzv4bt7sskFwd0aFM7pm0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/0TVEp/btqyGcmVs03/pZzv4bt7sskFwd0aFM7pm0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F0TVEp%2FbtqyGcmVs03%2FpZzv4bt7sskFwd0aFM7pm0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;처음엔 다중회귀와 다항식 회귀의 차이를 몰랐는데, 위 그림과 같이 간단히 설명할 수 있다.&lt;/p&gt;
&lt;p&gt;다시 말하자면, n차형 다항식 형태이면 &lt;u&gt;다항회귀&lt;/u&gt;, 1차형이고 변수가 많으면 &lt;u&gt;다중회귀인&lt;/u&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;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;왜 Linear라고 부르는가?&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dU9gTE/btqyG7dUigO/5L2krgjvAsv7xkcabCnYck/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dU9gTE/btqyG7dUigO/5L2krgjvAsv7xkcabCnYck/img.png&quot; data-alt=&quot;어쨌든 선형으로 표현이 가능하다.&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dU9gTE/btqyG7dUigO/5L2krgjvAsv7xkcabCnYck/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdU9gTE%2FbtqyG7dUigO%2F5L2krgjvAsv7xkcabCnYck%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;어쨌든 선형으로 표현이 가능하다.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;y와 x간의 관계를 직선형이 아니더더라도, 곡선형으로라도 선형으로 표현 가능하기 때문이다.&lt;/p&gt;
&lt;p&gt;만약에 분모의 영역에 x가 들어가게 된다면 더이상 선형이라고 부를 수 없을 것이다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Data/Machine Learning</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/23</guid>
      <comments>https://bigdatajessie.tistory.com/23#entry23comment</comments>
      <pubDate>Sat, 28 Sep 2019 14:10:16 +0900</pubDate>
    </item>
    <item>
      <title>머신러닝입문) Machine Learning A-Z udemy 강의 요약</title>
      <link>https://bigdatajessie.tistory.com/22</link>
      <description>&lt;p&gt;머신러닝은 통계학도로서 데이터 업계에 관심을 갖고 따라오다 보니 결국에는 마주하게 되는 관문 같은 것 같다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;일부 마케팅적인 용어와 섞이며 주가를 높이고는 있지만 실제로 이게 어떻게 구동하는지 잘 몰라 면접 때도 애를 먹었던 머신러닝. 다양한 루트로 지식을 접해오다가 문득 체계적으로 공부하고 배워보고 싶다는 열망이 생겼다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;다양한 공부 루트가 있을 수 있다.&lt;/p&gt;
&lt;p&gt;Udacity, Datacamp, 앵드류 응 교수의 강의 등&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;하지만 개인적으로 하나하나 체계적으로 따라가고 짚어주면서 나름 실습도 겸할 수 있는 강의를 원했고&lt;/p&gt;
&lt;p&gt;&lt;b&gt;마지막으로 선택하게 된 게 udemy 강의였다.&lt;/b&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;(해당 페이지는 구글 서칭을 통해 발견할 수 있는 다양한 블로그 중에서 공부방법을 잘 정리해 놓은 페이지인 것 같아 링크를 공유한다.)&lt;/p&gt;
&lt;figure id=&quot;og_1569640989844&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;article&quot; data-og-title=&quot;머신러닝 공부 순서, 방법 및 강의 정리&quot; data-og-description=&quot;이번 포스팅에서는 작년부터 머신러닝 공부를 시작하면서 들었던 강의와 머신러닝 공부 방법에 대해서 정리해보려고 한다. 필자도 아직 머신러닝을 마스터하려면 갈 길이 멀었지만, 그간 공부했던 경험을 토대로..&quot; data-og-host=&quot;gomcine.tistory.com&quot; data-og-source-url=&quot;https://gomcine.tistory.com/entry/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D-%EA%B3%B5%EB%B6%80-%EC%88%9C%EC%84%9C-%EB%B0%8F-%EB%B0%A9%EB%B2%95-%EA%B0%95%EC%9D%98-%EC%A0%95%EB%A6%AC&quot; data-og-url=&quot;https://gomcine.tistory.com/entry/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D-%EA%B3%B5%EB%B6%80-%EC%88%9C%EC%84%9C-%EB%B0%8F-%EB%B0%A9%EB%B2%95-%EA%B0%95%EC%9D%98-%EC%A0%95%EB%A6%AC&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bRloMy/hyCZTJaiAk/QKeXEOsV0DekniIsDkRM8K/img.jpg?width=655&amp;amp;height=568&amp;amp;face=0_0_655_568,https://scrap.kakaocdn.net/dn/cBEG2y/hyCZP7Q0kQ/mBOHmbELfpHsDqf774PiNK/img.jpg?width=655&amp;amp;height=568&amp;amp;face=0_0_655_568,https://scrap.kakaocdn.net/dn/bmeiEB/hyCZZbzLKT/ufLLhKe3mtk4jKFpJVRpLK/img.jpg?width=635&amp;amp;height=351&amp;amp;face=0_0_635_351&quot;&gt;&lt;a href=&quot;https://gomcine.tistory.com/entry/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D-%EA%B3%B5%EB%B6%80-%EC%88%9C%EC%84%9C-%EB%B0%8F-%EB%B0%A9%EB%B2%95-%EA%B0%95%EC%9D%98-%EC%A0%95%EB%A6%AC&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://gomcine.tistory.com/entry/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D-%EA%B3%B5%EB%B6%80-%EC%88%9C%EC%84%9C-%EB%B0%8F-%EB%B0%A9%EB%B2%95-%EA%B0%95%EC%9D%98-%EC%A0%95%EB%A6%AC&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bRloMy/hyCZTJaiAk/QKeXEOsV0DekniIsDkRM8K/img.jpg?width=655&amp;amp;height=568&amp;amp;face=0_0_655_568,https://scrap.kakaocdn.net/dn/cBEG2y/hyCZP7Q0kQ/mBOHmbELfpHsDqf774PiNK/img.jpg?width=655&amp;amp;height=568&amp;amp;face=0_0_655_568,https://scrap.kakaocdn.net/dn/bmeiEB/hyCZZbzLKT/ufLLhKe3mtk4jKFpJVRpLK/img.jpg?width=635&amp;amp;height=351&amp;amp;face=0_0_635_351');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;머신러닝 공부 순서, 방법 및 강의 정리&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;이번 포스팅에서는 작년부터 머신러닝 공부를 시작하면서 들었던 강의와 머신러닝 공부 방법에 대해서 정리해보려고 한다. 필자도 아직 머신러닝을 마스터하려면 갈 길이 멀었지만, 그간 공부했던 경험을 토대로..&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;gomcine.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;그 중에서도 아래 강의를 듣기 시작했는데, 생각보다 굉장히 상세하게 설명해주고 넘어가는 편이다.&lt;/p&gt;
&lt;p&gt;이론적인 부분부터 실제적인 부분까지,&lt;/p&gt;
&lt;p&gt;게다가 중간에 코드가 업데이트 되거나 바뀌면 수정해서 업데이트를 다시 해주는 강사의 친절함까지.&lt;/p&gt;
&lt;p&gt;게다가 9만 명이 넘는 사람들의 평가가 4.5가 넘는다는 건 꽤나 높은 신뢰도를 준다.&lt;/p&gt;
&lt;p&gt;게다가 대폭 할인행사를 자주하는 편이라 저렴한 가격으로 들을 수 있다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;이제 거의 다섯 번째 챕터를 넘어가는 과정이지만, 상당히 만족하는 편&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bdHfkv/btqyGIrT3Ma/ldDURLtfdMiuKRq1RhdAQ0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bdHfkv/btqyGIrT3Ma/ldDURLtfdMiuKRq1RhdAQ0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bdHfkv/btqyGIrT3Ma/ldDURLtfdMiuKRq1RhdAQ0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbdHfkv%2FbtqyGIrT3Ma%2FldDURLtfdMiuKRq1RhdAQ0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;다만 어느 정도의 영어가 뒷받침 되어야 편할 것이다. 자막이 있긴 한데 코드와 내용 그리고 영어까지 따라가는 것은 입력의 문제가 발생할 수도 있다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;아무튼 앞으로의 포스팅은 내 공부와 더불어 차분히 이런 내용들을 정리하여 올려볼 생각이다.&lt;/p&gt;</description>
      <category>Data/Machine Learning</category>
      <category>machine learning</category>
      <category>udemy</category>
      <category>머신러닝</category>
      <category>머신러닝 강의</category>
      <category>머신러닝 공부</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/22</guid>
      <comments>https://bigdatajessie.tistory.com/22#entry22comment</comments>
      <pubDate>Sat, 28 Sep 2019 12:27:53 +0900</pubDate>
    </item>
    <item>
      <title>PostgreSQL pgAdmin 데이터베이스, 테이블 조회</title>
      <link>https://bigdatajessie.tistory.com/16</link>
      <description>&lt;p&gt;Postgre SQL pgAdmin에서 /로 시작하는 명령어는 안먹힌다.&lt;/p&gt;
&lt;p&gt;고로 아래와 같이 해야 한다.&lt;/p&gt;
&lt;pre id=&quot;code_1569377661221&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;select * from pg_database; -- 데이터베이스 목록 검색
select * from pg_tables; -- 테이블 목록 검색
select * from pg_catalog.pg_namespace; -- 현재 db의 전체 스키마 조회
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Data/Postgre SQL</category>
      <category>PostgreSQL</category>
      <category>SQL</category>
      <category>데이터베이스</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/16</guid>
      <comments>https://bigdatajessie.tistory.com/16#entry16comment</comments>
      <pubDate>Wed, 25 Sep 2019 11:18:19 +0900</pubDate>
    </item>
    <item>
      <title>Postgre SQL pgAdmin 사용법</title>
      <link>https://bigdatajessie.tistory.com/15</link>
      <description>&lt;p&gt;postgre sql을 설치하면 자동으로 pgAdmin이 깔린다.&lt;/p&gt;
&lt;p&gt;요즘은 버전 4로 깔리는 듯??&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;blob&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bOklUx/btqyzcs5nFO/qEXuWQKtQI4lHdySwjUuG0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bOklUx/btqyzcs5nFO/qEXuWQKtQI4lHdySwjUuG0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bOklUx/btqyzcs5nFO/qEXuWQKtQI4lHdySwjUuG0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbOklUx%2Fbtqyzcs5nFO%2FqEXuWQKtQI4lHdySwjUuG0%2Fimg.png&quot; data-filename=&quot;blob&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;왼쪽 트리맵에 있는 구조 차례대로&lt;/p&gt;
&lt;p&gt;Postgre SQL 서버 - 데이터베이스 - 스키마 - 테이블대로 가면 되는 것 같다. 그 외 여타 것들은 중요하지 않다.&lt;/p&gt;
&lt;p&gt;다만 메뉴바 위에 번개모양을 누르면 SQL 명령어로 가게 되는데 저게 중요한 것이다.&lt;/p&gt;
&lt;p&gt;SQL을 하려면 저게 필요한데 저거 찾는데 30분은 걸린 듯하다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;명령어는 천천히 다음시간에..&lt;/p&gt;</description>
      <category>Data/Postgre SQL</category>
      <category>PostgreSQL</category>
      <category>SQL</category>
      <category>데이터베이스</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/15</guid>
      <comments>https://bigdatajessie.tistory.com/15#entry15comment</comments>
      <pubDate>Wed, 25 Sep 2019 11:04:13 +0900</pubDate>
    </item>
    <item>
      <title>Qlik이란 무엇인가?</title>
      <link>https://bigdatajessie.tistory.com/13</link>
      <description>&lt;p&gt;국내에서는 많이 알려지지 않았지만, 전 세계적으로 BI 및 Data Visualization 업계에서는 매우 높은 시장 점유율은 가진 솔루션이 있습니다. 그것은 바로&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c50Com/btqw7vH0DwS/emZ5lWJWC7fTaytxeZLNr1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c50Com/btqw7vH0DwS/emZ5lWJWC7fTaytxeZLNr1/img.jpg&quot; data-alt=&quot;Qlik&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c50Com/btqw7vH0DwS/emZ5lWJWC7fTaytxeZLNr1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc50Com%2Fbtqw7vH0DwS%2FemZ5lWJWC7fTaytxeZLNr1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Qlik&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;b&gt;클릭?&lt;/b&gt; 들어본 적도 없고 생소한 분들이 많으실 겁니다.&lt;/p&gt;
&lt;p&gt;저조차 회사에 들어오기 전에는 이 솔루션의 존재 자체도 몰랐으니 말입니다.(클릭 마케팅부서 일 안하나!)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;하지만 현재 1년 정도 클릭을 알고 사용하고 나서 드는 생각은, 정말 데이터 시각화나 요약화된 그래프 리포트를 만들어내는 데에는 최적의 툴이고, Excel로 일일이 데이터를 관리하면서 그것을 수동으로 최신화하거나, 수동으로 그래프를 만들어야하는 기업과 사람들에게는 정말 파워풀한 툴이 될 수 있다는 것입니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;그럼 이게 도대체 무슨 툴인지, BI가 무엇인지, 왜 그럼 누가 이 툴을 쓰는게 좋은지 한번 얘기해봅시다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3&gt;1. 이건 또(?) 도대체 무슨 툴인가?&lt;/h3&gt;
&lt;p&gt;&lt;b&gt;간단히 말하면 BI 툴입니다.&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/oKeIB/btqw7caRQyf/Fl6gtt81Vr0Vl90zUFw3Lk/img.gif&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/oKeIB/btqw7caRQyf/Fl6gtt81Vr0Vl90zUFw3Lk/img.gif&quot; data-alt=&quot;출처:&amp;amp;amp;nbsp;https://www.qlik.com/us/products/qlik-sense&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/oKeIB/btqw7caRQyf/Fl6gtt81Vr0Vl90zUFw3Lk/img.gif&quot; srcset=&quot;https://blog.kakaocdn.net/dn/oKeIB/btqw7caRQyf/Fl6gtt81Vr0Vl90zUFw3Lk/img.gif&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;출처:&amp;nbsp;https://www.qlik.com/us/products/qlik-sense&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;테이블 형태로 구성되어 있는 모든 데이터를 재구성하여 막대 그래프, 라인그래프, 피벗테이블, 지도 그래프 등으로 표현해줄 수 있는 툴입니다. 국내에서 잘 알려져 있는 경쟁툴은 'Tablaeu'가 있습니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Qlik은 총 2개의 제품을 런칭하고 있습니다. 하나는 &lt;b&gt;Qlik View&lt;/b&gt;이고 하나는 &lt;b&gt;Qlik Sense&lt;/b&gt;입니다. 이 둘의 차이는 나중에 자세히 다룰 기회를 가지겠습니다. 간단히 말씀드리면 Qlik Sense가 비교적 최근에 나온 툴이며, Self-BI(스스로 만들고 분석해보는 BI)라는 업계의 트렌드에 부합하는 솔루션이라고 할 수 있겠네요. 반대로 Qlik View는 정교하게 Customizing된 화면을 구성할 수 있고, 다양한 방향으로 개발이 가능해서 유연성이 높은 버전이라고 할 수 있겠습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tOg3F/btqw7wNGC0p/QE7L17CMUsWo1FmfLDVOvk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tOg3F/btqw7wNGC0p/QE7L17CMUsWo1FmfLDVOvk/img.png&quot; data-alt=&quot;QLIK 공식 홈페이지 출처&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tOg3F/btqw7wNGC0p/QE7L17CMUsWo1FmfLDVOvk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtOg3F%2Fbtqw7wNGC0p%2FQE7L17CMUsWo1FmfLDVOvk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;QLIK 공식 홈페이지 출처&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;전세계적으로는 이미 50,000개가 넘는 고객사를 지니고 있습니다. 국내에서는 하이닉스를 비롯한 다양한 기업이 이미 qlik을 도입해서 사용하고 있지요~&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3&gt;2. BI는 무엇인가요?&lt;/h3&gt;
&lt;p&gt;BI는 Business Intelligence의 줄임말입니다. 한국어로 풀어 의역하자면, '데이터를 시각화하여 이 안에서 인사이트를 창출해내는 행위의 일체'정도로 설명드릴 수 있습니다. 예를 들어 온라인 쇼핑몰의 경우 사이트에 들어오는 고객의 유입율을 유심히 관찰하고, 어떤 나이대의 고객인지, 성별은 무엇인지, 이 사람이 자주 검색하는 키워드는 무엇인지 궁금하겠지요? 그럼 수집된 데이터가 있다면 그것을 그래프로 시각화하여 표현한다면 아주 간결하게 눈에 들어온다는 겁니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tKKUh/btqw7PM0vmv/f2ng7TdKR1wzfWVg2WWru0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tKKUh/btqw7PM0vmv/f2ng7TdKR1wzfWVg2WWru0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tKKUh/btqw7PM0vmv/f2ng7TdKR1wzfWVg2WWru0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtKKUh%2Fbtqw7PM0vmv%2Ff2ng7TdKR1wzfWVg2WWru0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;상황을 생각해봅시다. 여러분은 회의를 하고 있고 의사결정을 해야 하는 여러 사람들이 한 자리에 모였습니다. 그들과 이야기할 때 쭉 펼쳐진 엑셀 테이블을 펼치며 이야기하는 것과, 그 데이터를 합쳐 평균과 분산, 각 관점별로 보고싶은 데이터를 요약한 그래프를 보여주는 것을 비교했을 때, 어느 쪽이 더 효율적인 결론을 도출해낼까요?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4&gt;3. 이걸 누가 쓰면 좋을까요?&lt;/h4&gt;
&lt;p&gt;&lt;b&gt;1) BI툴을 경험하고 싶은 개인&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Qlik 제품의 장점은, Desktop 버전으로 혼자 사용한다면 Demo 버전을 무료로 지속적으로 사용할 수 있다는 점입니다. 그래서 데이터는 있는데, 간단히 분석해보고 싶다고 생각하시면 Qlik에 가입 후 Qlik Sense를 다운받아 사용하실 수 있습니다. 엑셀을 포함한 DB(SQL), Hadoop 등 다양한 데이터 소스를 지원하기 때문에 데이터가 있다면 꼭 한 번 해보시길&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;2) 다뤄야 하는 데이터의 양이 많은 기업&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;데이터가 무거워질수록 툴은 느려지는 법! 태블로를 포함한 다양한 제품들은 데이터의 단위가 커질수록 제 실력을 발휘하기가 어렵습니다. 하지만 Qlik의 장점 중 하나는 이 솔루션이 가진 데이터 처리 엔진입니다. 인메모리 기반의 엔진은 데이터를 압축하고 로드하는 시간을 줄여 &lt;b&gt;개발자와 분석가들의 스트레스를 덜어낼 수 있습니다. ^_^&lt;/b&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;&lt;i&gt;오늘은 간단히 Qlik이라는 솔루션에 대해 맛보기를 하고 넘어가도록 하겠습니다.&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;i&gt;다음 포스팅은 Qlik의 기능과 장점 실제 활용 사례 등을 천천히 보도록 하지요&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;i&gt;그럼 ADIOS&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Data/Qlik</category>
      <category>BI</category>
      <category>QLIK</category>
      <category>데이터 분석</category>
      <category>데이터 시각화</category>
      <category>분석</category>
      <category>빅데이터</category>
      <category>시각화</category>
      <category>태블로</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/13</guid>
      <comments>https://bigdatajessie.tistory.com/13#entry13comment</comments>
      <pubDate>Sun, 28 Jul 2019 13:35:00 +0900</pubDate>
    </item>
    <item>
      <title>좋은 부채와 나쁜 자본</title>
      <link>https://bigdatajessie.tistory.com/7</link>
      <description>&lt;p&gt;&lt;b&gt;좋은 부채도 있다?&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;매입채무&lt;/b&gt;: 거래처에서 구매한 상품에 대한 대가&lt;/p&gt;
&lt;p&gt;&lt;b&gt;미지급금&lt;/b&gt;: 거래처에서 구매한 서비스에 대해 지불해야 하는 돈&lt;/p&gt;
&lt;p&gt;&lt;b&gt;선수금&lt;/b&gt;(일명 착한 부채): 용역이나 서비스로 지급하는 부채 -&amp;gt; 미리 돈을 다 받고 그에 대한 서비스를 제공하는 것&lt;/p&gt;
&lt;p&gt;&amp;nbsp;- 즉 확정 매출에 대한 부분이라고 볼 수 있음&lt;/p&gt;
&lt;p&gt;&lt;b&gt;예수금&lt;/b&gt;: 신원보증금처럼 임시로 보관하는 금액 -&amp;gt; 앞으로 내줄 돈이니 부채&lt;/p&gt;
&lt;p&gt;&lt;b&gt;미지급비용&lt;/b&gt;: 보험료 같은 것&lt;/p&gt;
&lt;p&gt;&lt;b&gt;충당부채&lt;/b&gt;: 앞으로 손실이 발생할 것을 대비하여 미리 장부에 기록하는 항목&lt;/p&gt;
&lt;p&gt;&amp;nbsp;- 제품 보증이나 환율의 경우 몇 퍼센트 발생할 지 예측할 수 있기 때문에 충당부채로 잡는다.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;퇴직급여충당부채&lt;/b&gt;: 퇴직금에 해당하는 충당부채&lt;/p&gt;
&lt;p&gt;* 충당부채는 매년 주기적으로 발생하는 부채이므로 투자자에게 좋은 정보를 제공함( 회사의 손실 예측가능)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;단기차입금, 장기차입금, 유동성장기차입금 -&amp;gt; 그야말로 은행에서 빌려온 돈들이므로 주의해서 관리하는 항목&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;따라서 부채가 전체적으로 늘었다고 그 기업의 위험도가 증가했다고 볼 수만은 없다. 즉 좋은 부채도 있다는 뜻!&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Investment/재무제표</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/7</guid>
      <comments>https://bigdatajessie.tistory.com/7#entry7comment</comments>
      <pubDate>Tue, 16 Apr 2019 23:06:09 +0900</pubDate>
    </item>
    <item>
      <title>회계는 자산으로 시작해서 자산으로 끝난다</title>
      <link>https://bigdatajessie.tistory.com/6</link>
      <description>&lt;p&gt;자산: 과거의 거래나 사건의 결과로 현재 기업 실체에 의해 지배되고 미래에 경제적 효익을 창출할 것으로 기대되는 자원!&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;하지만 기업에 속해 있다고 모두 자산이 되진 않는데, 이를 이해하기 위한 두 가지가 있다.&lt;/p&gt;
&lt;p&gt;바로 '&lt;b&gt;자산성&lt;/b&gt;'과 '&lt;b&gt;자산화&lt;/b&gt;'이다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;자산성이란 팔아서 돈이 될 수 있으며, 기업이 소유권을 가지고 있다는 뜻이다.&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;-따라서 사람은 자산이 되지 못한다. 인재는 기업에 이익을 가져다 주긴 하지만, 사고 팔 수 없기 때문이다&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;1)현금및현금성자산:&lt;/b&gt;현금과 예금을 뜻함&lt;br /&gt;&lt;b&gt;2)매출채권:&amp;nbsp;&lt;/b&gt;서비스를 판매하고 아직 받지 못한 돈, 즉 어음&lt;/p&gt;
&lt;p&gt;&lt;b&gt;3)재고자산:&amp;nbsp;&lt;/b&gt;창고에 보관되어 있는 재고를 뜻한다.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;4)유형자산:&amp;nbsp;&lt;/b&gt;토지 건물 기계장치, 공구와 기구 등&lt;/p&gt;
&lt;p&gt;&lt;b&gt;5)무형자산:&amp;nbsp;&lt;/b&gt;영업권 브랜드와 관련된 산업재산권, 개발비 로얄티 등&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;기업은 모든 자원의 자산성을 따져서 장부에 기록한다. 왜냐하면, 이 자산을 다시 팔 때, 얼마를 받을 수 있을지 측정해야 하기 때문이다. 즉 자산관리라는 것은 기업이 가진 자산의 자산성을 스스로 감시하는 활동이다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;자산을 평가할 떄는 일관된 기준으로 평가하지는 않는다. 예를 들어서 10억짜리 기계가 있다고 치자. 이 기계를 닳도록 써서 1억짜리가 되었다면 기업은 자산에서 9억만큼을 지워야 한다. 반대의 경우도 마찬가지이지만, 자산을 늘리는 과정은 꽤 보수적으로 진행되므로, 왠만하면 그대로 두는 편이다&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;자산화는 조달된 자금이 자산으로 변해가는 과정을 뜻한다.&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;* 사내 유보금 논쟁&lt;/p&gt;
&lt;p&gt;재무제표에는 사내유보금이라는 것이 없다. 사내유보금은 경제 경영 용어이다.&lt;/p&gt;
&lt;p&gt;사내유보금은 자본잉여금이나 이익잉여금이 아니다! 이익잉여금은 기업이 시작부터 지금까지 영업활동을 해오며 축적해온 이익의 총량을 가리킨다.&lt;/p&gt;
&lt;p&gt;그렇다면 사내에 쌓아둔 현금은 무엇일까? 바로 '현금성 자산'이다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Investment/재무제표</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/6</guid>
      <comments>https://bigdatajessie.tistory.com/6#entry6comment</comments>
      <pubDate>Mon, 15 Apr 2019 23:41:16 +0900</pubDate>
    </item>
    <item>
      <title>재무제표의 개념잡기</title>
      <link>https://bigdatajessie.tistory.com/5</link>
      <description>&lt;p&gt;단어정리부터 하고 가자는 말이다. 결국 재무제표를 채우는 가장 큰 대분류 다섯 가지,&lt;/p&gt;
&lt;p&gt;자산, 부채, 자본, 수익, 비용이 무엇인지 정리하고 가자는 얘기다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;뻔한 정의 같은 것보다 늘 쉬운 개념으로 머리에 넣으면 좋으니, 책에 나온대로 쉽게 정의해보자.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;font-size: 1.25em;&quot;&gt;&lt;b&gt;자산: 앞으로팔아서 돈이 될 자원&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;font-size: 1.25em;&quot;&gt;&lt;b&gt;부채: 남에게 빌려온 빚&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;font-size: 1.25em;&quot;&gt;&lt;b&gt;자본: 기업이 스스로 출자한 '내 돈'&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;font-size: 1.25em;&quot;&gt;&lt;b&gt;수익: 벌어들이는 모든 것&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;font-size: 1.25em;&quot;&gt;&lt;b&gt;비용: 경영활동에 사용되는 모든 자원&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;ex) 부채비율이 200%라는 뜻은?&lt;/p&gt;
&lt;p&gt;내 자본보다 부채, 즉 빌려온 돈이 2배 이상 많아 위험하다는 뜻&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;*현금 흐름이란?&lt;/p&gt;
&lt;p&gt;실제로 회사에 들어오는 돈과 벌기 위해서 사용하는 돈의 흐름을 의미한다.&lt;/p&gt;
&lt;p&gt;영업하는 친구의 말에 의하면 그 회사가 얼마나 현금을 들고 있는지를 의미한다고 했다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote style=&quot;font-size: 1.12em;&quot; data-ke-style=&quot;normal&quot;&gt;&lt;b&gt;재무제표의 4대천왕&lt;/b&gt;&lt;/blockquote&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;재무상태, 손익계산,현금흐름, 그리고 주석&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;1. 재무상태&lt;/p&gt;
&lt;p&gt;재무상태표는 재무제표 중에서 가장 중요하며 예전에는 대차대조표로도 불리었다. 자산 부채 자본의 합꼐와 구성요소, 세부적으로는 유동자산, 비유동 자산 등 기업의 재무 상태에 필요한 전반적인 정보를 볼 수 있다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;2.손익계산서&lt;/p&gt;
&lt;p&gt;매출액, 당기순이익, 영업이익 등이 이 곳에 속하는 용어들이다. 손익계산서는 지난 1년 간 회사의 손해와 이익을 담은 재무제표이다. '수익 - 비용 = 이익'이라는 간단한 공식이 지배하는 세계&lt;/p&gt;
&lt;p&gt;* 재무상태표가 기업이 가진 자산이 얼마나 되는지를 보여준다면, 손익계산서는 기업이 얼마나 이익을 내고 있는지를 보여준다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;3. 현금흐름표&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;4. 주석&lt;/p&gt;
&lt;p&gt;'주석이 없는 재무제표는 바퀴없는 자동차와 마찬가지이다!'&lt;/p&gt;
&lt;p&gt;왜냐하면 첨부된 재무제표에 대한 주석은 본 재무제표의 일부이기 때문이다. 예를 들어서 1000억의 매출이나 그에 해당하는 이익 등은 숫자를 통해서 볼 수 있다. 그러나 1000억이라는 숫자가 어떻게 나왔고 내수와 수출은 얼마나 되며 구성이 어떻게 이루어지는지는 주석 없이 해석할 수 없다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;* 주석만 읽어도 정보량이 2배로 늘어난다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;오늘은 요기까지!&lt;/p&gt;</description>
      <category>Investment/재무제표</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/5</guid>
      <comments>https://bigdatajessie.tistory.com/5#entry5comment</comments>
      <pubDate>Wed, 10 Apr 2019 01:04:21 +0900</pubDate>
    </item>
    <item>
      <title>재무제표 이야기로 시작하기, 재무제표를 향한 오해</title>
      <link>https://bigdatajessie.tistory.com/4</link>
      <description>&lt;blockquote data-ke-style=&quot;normal&quot;&gt;&quot;학생들이여! 공부법을 공부할 필요가 없다.&quot;&lt;/blockquote&gt;
&lt;p&gt;이 말은 &quot;직장인 들이여! 회계를 전부 이해하려고 하지마라.&quot;라는 말로 내게는 들린다. 다시 말하면, '쓰는 회계'와 '읽는 회계'가 따로 있다는 말이다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;내가 고등학교부터 공부할 때 가지고 있던 답답한 습관 중 하나는 필요한 부분만 빼내는 요령 없이 통째로 가져다 공부하려고 했다는 점이다. 물론 좋은 점수를 얻는 데엔 한 몫 했겠으나 사용한 시간 대비 효율을 냈다고 말하기는 어렵다. 하지만 효과는 입증되었다고 스스로 여겼는지, 나는 대학교 내내 그 공부법을 유지하며 한 켠으로 답답함을 가지고 있었다. 신문이나 책을 읽을 때도 요령껏 필요한 정보를 뽑아내는 것이 아니라, 꼭 앞장부터 읽어내야 속이 시원했다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;하지만 이 책에서는 그럴 필요가 없다고 말한다. 내게 필요한 회계공부만 하면 된다. 훨씬 가볍게 시작할 수 있는 마음가짐이다.&lt;/p&gt;
&lt;p style=&quot;font-size: 1.25em;&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;font-size: 1.25em;&quot;&gt;&lt;b&gt;회계순환과정&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;이라는 게 있다지만 '읽는 회계'에서는 필요 없다고 소개한다. 그렇다면 나야 좋지. 우리는 재무제표만 읽으면 된다는 말씀.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;* 재무비율: 재무상태표나 손익계산서의 숫자를 이용해 만든 지표로 기업의 수익성, 성장성, 안정성, 활동성을 나타낸다. 예를 들어, 매출액 대비 영업이익의 비율인 영업이익률은 대표적인 수익성 지표다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3&gt;회계에 대한 세 가지 오해&lt;/h3&gt;
&lt;p style=&quot;font-size: 1.25em;&quot;&gt;1.회계는 객관적인 정보다&lt;/p&gt;
&lt;p style=&quot;font-size: 1.25em;&quot;&gt;2.회계는 가장 최신의 재무정보다.&lt;/p&gt;
&lt;p style=&quot;font-size: 1.25em;&quot;&gt;3.회계는 숫자 그대로의 팩트를 담고 있다.( 1과 3은 같은 말이 아닌가?)&lt;/p&gt;
&lt;p style=&quot;font-size: 1.25em;&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;font-size: 1.25em;&quot;&gt;회계는 객관적이지 않다!&lt;/p&gt;
&lt;p&gt;회계장부에는 기업의 의도가 담긴다. 즉 숨기고 싶은 것은 숨기고, 드러내고 싶은 것은 드러낼 수 있다는 말씀.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;font-size: 1.25em;&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;회계는 약간 철지난 정보다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;왜냐하면, 한 해의 사업보고서 다음 해 3월에 나오고, 1분기 보고서가 5월에 나오는 식이기 때문이다. 따라서 새롭게 바뀐 최신의 경향은 재무제표에 반영되지 않는다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;* 생각해보니 얼마 전에 분기보고서를 발표한 것 같은데 얼른 확인해봐야겠다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;normal&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;기업의 재무정보는 기업의 그림자이다.&lt;/span&gt;&lt;/blockquote&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;font-size: 1.25em;&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;회계는 발생주의다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;이게 도대체 무슨 말인가 싶었다. 책에 의하면, 우리가 쉽게 생활에서 돈을 꺼내어 주는 순간 손실이 발생한 것으로 치는 방법을 '현금주의'라고 한다. 즉 내가 지갑에서 돈을 꺼내어 건내어주었을 때 손실이 발생한다는 것. 하지만 기업 회계에서는 현금을 주지 않았더라도 거래가 시작되는 시점에, 현금의 이동 없이, 장부에 기재하는 방식이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Investment/재무제표</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/4</guid>
      <comments>https://bigdatajessie.tistory.com/4#entry4comment</comments>
      <pubDate>Wed, 3 Apr 2019 23:02:16 +0900</pubDate>
    </item>
    <item>
      <title>재무제표의 시작</title>
      <link>https://bigdatajessie.tistory.com/3</link>
      <description>&lt;p&gt;어느 날 면담을 하자던 나의 상사는 재무제표의 중요성을 역설하며 결국 본인의 이야기를 하셨다. 과정이야 어쨌건 그 시간을 통해 남은 것은 재무제표가 얼마나 중요한 것인지, 그리고&amp;nbsp; 내가 그에 대하여 얼마나 무지한지였다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;자산, 자본, 부채와 손익 그리고 순이익 영업이익율 정도는 파악할 줄 알았지만, 그것이 어떻게 유기적으로 연결되고 무엇을 통해 무엇이 나오는지 알지 못하니 매우 표면적인 지식에 그쳤다고 할 수 있겠다. 또 나처럼 BI를 진행하고 개발하고 차후 컨설팅까지 진행하기 위해서는, 재무제표나 ERP 시스템 등을 빠삭하게 알아야 했다. 그래야 회사의 생리를 빠르게 이해하고, 이 사람들이 DASHBOARD를 통해 보고 싶어하는 것이 무엇인지를 파악할 수 있기 때문이다.( 겪어보지는 않았지만 그럴 것이라 예상한다.)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;내가 고른 책은 '숫자 울렁증 32세 이승환 씨는 어떻게 재무제표 읽어주는 남자가 됐을까'라는 다소 길고 장황하지만 필요한 상황과 내가 달성하고자 하는 목적을 정확히 짚어낸 제목의 책이다. 이제 겨우 몇 장 안넘긴 수준이지만, 공부 겸 기록을 남겨 나의 것으로 만드려는 시도를 계속해야지.&lt;/p&gt;</description>
      <category>Investment/재무제표</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/3</guid>
      <comments>https://bigdatajessie.tistory.com/3#entry3comment</comments>
      <pubDate>Wed, 3 Apr 2019 21:39:35 +0900</pubDate>
    </item>
    <item>
      <title>한국복지패널 데이터 분석(분석 목적 설정과 데이터 준비)</title>
      <link>https://bigdatajessie.tistory.com/2</link>
      <description>&lt;p&gt;한국복지패널 데이터는 한국인의 다양한 삶의 양상을 볼 수 있는 데이터이다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;분석에 앞서 데이터 '무엇을 보고 싶어하는지'를 정의하는 것은 무척 중요한 일이라고 한다.&amp;nbsp;&lt;/p&gt;&lt;p&gt;목표가 없이 분석을 하는 것은 목표에 도달하지 못하는 분석과 동일하기 때문이다.&lt;/p&gt;&lt;p&gt;반대로 목표가 있으면, 설령 그 목표에 맞는 분석이 실패하더라도 무엇이 잘못되었는지 알 수 있다고 했다.&lt;/p&gt;&lt;p&gt;그래서 이 1000개가 넘는 Column을 가진 데이터의 바다 속에서, 나는 가장 기본적인 결정변수를 잡아보았다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&lt;i&gt;&quot;소득과 다양한 변수들(성별, 지역, 건강, 직업, 나이 등)은 어떤 관계가 있을까?&quot;&lt;/i&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;왜 이 질문이 중요한가?&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;1. 만약 지역별로 소득이 편중되어 있다면, 우리나라의 지역불균형에 대한 이야기를 이어가볼 수 있다. 소득은 분명한 지표가 될 수 있으니까.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;2. 성별로 차이가 있다면, 우리는 '유리천장'문제에 대하여 이야기해볼 수 있다. 하지만 이를 위해서는 세부적인 조사가 더 필요하겠다. 예를 들어&lt;/p&gt;&lt;p&gt;&amp;nbsp;1) 진짜로 성별 차이로 인해서 발생한 임금의 차이인가 - 여자라서 임금을 덜 주는 경우가 있는가?&lt;/p&gt;&lt;p&gt;&amp;nbsp;2) 그 외에 여성의 반강제적인 사회적 책임(육아나 출산)에 의해, 공백기간을 포함했는가, 또 그로 인한 불이익을 감안했는가?&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;작은 부분부터 시작해보자&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;먼저 Rstudio를 켜고 라이브러리를 불러온다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;# 분석패키지 라이브러리&lt;/b&gt;&lt;/p&gt;&lt;p&gt;library(dplyr)&lt;/p&gt;&lt;p&gt;library(foreign)&lt;/p&gt;&lt;p&gt;library(ggplot2)&lt;/p&gt;&lt;p&gt;library(readxl)&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;# 파일 불러오기&lt;/b&gt;&lt;/p&gt;&lt;p&gt;raw_welfare &amp;lt;- read.spss(file = &quot;Koweps_hpda12_2017_beta1.sav&quot;,&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;to.data.frame = T)&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;# 원시 데이터 넣기&lt;/b&gt;&lt;/p&gt;&lt;p&gt;welfare &amp;lt;- raw_welfare&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;i&gt;&amp;nbsp;* 이작업은 반드시 필요하다. 원시데이터와 분석하는 테이블을 분리하지 않는다면, 나중에 잘못된 변수를 집어넣거나 파일을 날렸을 때 어마어마하게 곤란한 상황이 벌어질 수 도 있다. 또한 매우 귀찮은 상황에 처하기도 한다.(다시 파일을 불러와야 한다던가)&lt;/i&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;# 변수 이름 조정&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;welfare &amp;lt;- rename(welfare,&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sex = h12_g3, #성별&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; birth = h12_g4, #태어난 해&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; education = h12_g6, # 교육수준&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; region = h12_reg7, # 지역코드&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; marriage = h12_g10, # 혼인여부&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; medcal_ins = h12_med10, # 의료보험가입개수&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; income = h12_din, # 가처분 소득&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; code_job = h12_eco9, #직종&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; health = h12_med2)&amp;nbsp; # 건강상태&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;p&gt;welfare &amp;lt;- rename(welfare,&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; income2 = h12_pers_income1, #상용근로자 소득&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; income3 = h12_cin) # 경상소득&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;i&gt;&amp;nbsp;* 변수의 이름들을 알아보기 힘들기 때문에 보기 편한 수준으로 조정했다.&lt;/i&gt;&lt;/p&gt;&lt;p&gt;&lt;i&gt;&amp;nbsp;* 추가로 붙인 변수는 가처분소득 이외에 다른 결과를 나타낼 수도 있는 경상소득과 상용근로자 소득을 통해 다양한 분석을 하기 위함이다.&lt;/i&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;이제 분석을 위한 데이터 준비는 끝났다. 앞으로 하게 될 분석은 전체적으로&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;1) 데이터 전처리&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;2) 데이터 분석 / 시각화&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;두 단계를 반복하며 진행해볼 예정이다.&lt;/p&gt;</description>
      <category>Other Topics/제씨생각</category>
      <author>제씨_</author>
      <guid isPermaLink="true">https://bigdatajessie.tistory.com/2</guid>
      <comments>https://bigdatajessie.tistory.com/2#entry2comment</comments>
      <pubDate>Sun, 3 Jun 2018 20:15:07 +0900</pubDate>
    </item>
  </channel>
</rss>