diff --git a/_freeze/chatgpt_sch_202404/execute-results/html.json b/_freeze/chatgpt_sch_202404/execute-results/html.json
new file mode 100644
index 0000000..e2b7587
--- /dev/null
+++ b/_freeze/chatgpt_sch_202404/execute-results/html.json
@@ -0,0 +1,19 @@
+{
+ "hash": "849c3dd99e44df53355a0e57deea1884",
+ "result": {
+ "engine": "knitr",
+ "markdown": "---\ntitle: \"챗GPT 데이터 사이언스\"\nsubtitle: \"데이터 사이언스 패러다임 전환\"\nauthor: \"이광춘\"\ninstitute: \"한국 R 사용자회\"\ndate: 2024-04-29\nformat: \n insper-revealjs:\n self-contained: false\n code-overflow: wrap\n footer: |\n 한국 R 사용자회 [chatGPT](https://r2bit.com/chatGPT/). theme [insper](https://github.com/padsInsper/quarto-insper-theme) 소스코드 [GitHub](https://github.com/padsInsper/quarto-insper-theme).\ndate-format: long\nlang: ko\nfilters:\n - lightbox\nlightbox: auto\nbibliography: bibliography.bib\ncsl: apa-single-spaced.csl \neditor_options: \n chunk_output_type: console\n---\n\n\n## 목차\n\n1. 들어가며 \n - 서울 R 미트업\n - 챗GPT 데이터 과학 (도서)\n - 챗GPT 데이터 과학 교과과정\n\n2. 챗GPT 데이터 과학\n - 사무노동 (a.k.a 오피스 전쟁)\n - 챗GPT 데이터 사이언스 \n - 디지털 저작 (코딩 + 글쓰기)\n\n3. 질의응답!\n\n\n\n# {background-image=\"img/meetup_logo.jpg\"}\n\n::: r-fit-text\n\n2023년 챗GPT 데이터 사이언스\n
\n:::\n\n## 서울 R 미트업 (2023년) {.smaller}\n\n::: columns\n::: column\n::: r-stack\n\n![](img/seoul-r-meetup-september.jpg){.fragment width=\"320\"}\n\n::: fragment\n![](img/seoul-r-meetup-august.jpg){.fragment width=\"320\"}\n:::\n\n\n::: fragment\n![](img/seoul-r-meetup-july.jpg){.fragment width=\"320\"}\n:::\n\n::: fragment\n![](img/seoulr-r-meetup-june.jpg){.fragment width=\"320\"}\n:::\n\n::: fragment\n![](img/seoul-r-meetup-202305.jpg){.fragment width=\"320\"}\n:::\n\n::: fragment\n![](img/seoul-r-meetup-AsiaR.jpg){.fragment width=\"320\"}\n:::\n\n::: fragment\n![](img/seoul-r-meetup-202304.jpg){.fragment width=\"320\"}\n:::\n\n\n:::\n:::\n\n::: column\n## 참여와 연대\n\n- **서울R미트업 meetup.com**: [link](https://www.meetup.com/seoul-r-meetup)\n - **23년 4월 서울 R 미트업**: [link](https://www.meetup.com/seoul-r-meetup/events/292232899/)\n - **23년 5월 서울 R 미트업**: [link](https://www.meetup.com/seoul-r-meetup/events/292966674/)\n - **23년 6월 서울 R 미트업**: [link](https://www.meetup.com/seoul-r-meetup/events/293485362/)\n - **23년 7월 서울 R 미트업**: [link](https://www.meetup.com/seoul-r-meetup/events/293929603/)\n - **23년 8월 서울 R 미트업**: [link](https://www.meetup.com/seoul-r-meetup/events/294651161/)\n - **23년 9월 서울 R 미트업**: [link](https://www.meetup.com/seoul-r-meetup/events/295338359/)\n- 세계 R 미트업 현황 (Global R Meetup Dashboard): [link](https://r-community.org/usergroups/)\n- 한국 R 사용자회 (Korea R User Group): [link](https://r2bit.com/)\n- 한국 R 컨퍼런스 (Korea R Conference): [link](https://use-r.kr/)\n- 유튜브 채널 (Youtube Channel): [link](https://www.youtube.com/channel/UCW-epmIvjBEhhVXw_F0Nqbw)\n- 페이스북 그룹 (Facebook Group): [link](https://www.facebook.com/groups/tidyverse)\n:::\n:::\n\n\n\n# {background-image=\"img/meetup_logo.jpg\"}\n\n::: r-fit-text\n\n2024년 인공지능 데이터 사이언스\n
\n:::\n\n## 서울 R 미트업 {.smaller}\n\n::: columns\n::: column\n::: r-stack\n\n![](img/meetup/20240430_poster.png){.fragment width=\"320\"}\n\n::: fragment\n![](img/meetup/20240430_poster.png){.fragment width=\"320\"}\n:::\n\n\n\n:::\n:::\n\n::: column\n## 참여와 연대\n\n- **서울R미트업 meetup.com**: [link](https://www.meetup.com/seoul-r-meetup)\n - **23년 4월 서울 R 미트업**: [link](https://www.meetup.com/seoul-r-meetup/events/300281000/)\n - **23년 5월 서울 R 미트업**: [link]()\n - **23년 6월 서울 R 미트업**: [link]()\n - **23년 7월 서울 R 미트업**: [link]()\n - **23년 8월 서울 R 미트업**: [link]()\n - **23년 9월 서울 R 미트업**: [link]()\n- Resources for General Help with R - Regional R communities [link](https://contributor.r-project.org/r-help)\n- 세계 R 미트업 현황 (Global R Meetup Dashboard): [link](https://r-community.org/usergroups/)\n- 한국 R 사용자회 (Korea R User Group): [link](https://r2bit.com/)\n- 한국 R 컨퍼런스 (Korea R Conference): [link](https://use-r.kr/)\n- 유튜브 채널 (Youtube Channel): [link](https://www.youtube.com/channel/UCW-epmIvjBEhhVXw_F0Nqbw)\n- 페이스북 그룹 (Facebook Group): [link](https://www.facebook.com/groups/tidyverse)\n:::\n:::\n\n\n# 챗GPT 도서출판\n\n## 챗GPT 데이터 과학 도서 {.smaller}\n\n::: panel-tabset\n### 챗GPT 시리즈\n\n![](img/book/chatGPT_series3.png){fig-align=\"center\" width=\"552\"}\n\n### 데이터 과학 \n\n::: {#chatGPT-ds layout-ncol=\"2\"}\n![](img/book/cover_ds.jpg){fig-align=\"center\" width=\"250\"}\n\n![](img/book/ds_logo.png){fig-align=\"center\" width=\"300\"}\n:::\n\n📘 교보 POD 종이책: \n\n📗 교보 전자책: \n\n🌐 웹사이트: \n\n💻 소스코드: [@lee2024ds]\n\n### 코딩 \n\n::: {#chatGPT-coding layout-ncol=\"2\"}\n![](img/book/cover_coding.jpg){fig-align=\"center\" width=\"250\"}\n\n![](img/book/coding_logo.png){fig-align=\"center\" width=\"300\"}\n:::\n\n📘 교보 POD 종이책: \n\n📗 교보 전자책: \n\n🌐 웹사이트: \n\n💻 소스코드: [@lee2024coding]\n\n### 쿼토\n\n::: {#chatGPT-sql layout-ncol=\"2\"}\n![](img/book/cover_quarto.jpg){fig-align=\"center\" width=\"250\"}\n\n![](img/book/quarto_logo){fig-align=\"center\" width=\"300\"}\n:::\n\n📘 교보 POD 종이책: \n\n📗 교보 전자책: \n\n🌐 웹사이트: \n\n💻 소스코드: [@lee2024quarto]\n\n### SQL\n\n::: {layout-ncol=\"2\"}\n![](img/book/sql_cover.jpg){fig-align=\"center\" width=\"250\"}\n\n![](img/book/sql_logo.png){fig-align=\"center\" width=\"300\"}\n:::\n\n📘 교보 POD 종이책: \n\n📗 교보 전자책: \n\n🌐 웹사이트: \n\n💻 소스코드: [@lee2024sql]\n\n### 유닉스 쉘\n\n::: {#chatGPT-shell layout-ncol=\"2\"}\n![](img/book/cover_unix.jpg){fig-align=\"center\" width=\"250\"}\n\n![](img/book/hex_chatGPT_unix_shell_02.png){fig-align=\"center\" width=\"300\"}\n:::\n\n📘 교보 POD 종이책: \n\n📗 교보 전자책: [https://bit.ly/KzUdOU](https://bit.ly/3KzUdOU)\n\n🌐 웹사이트: \n\n💻 소스코드: [https://bit.ly/3wrgeuP](https://bit.ly/49p0I1f) [@lee2023shell]\n\n📰 뉴스기사: [챗GPT가 던진 새 가능성, 데이터 과학 분야 통해 미리 살펴보기](https://omn.kr/25f0i)\n\n\n### 확률통계\n\n::: {#chatGPT-ds layout-ncol=\"2\"}\n\n준비중\n\n:::\n\n📘 교보 POD 종이책: 준비중\n\n📗 교보 전자책: 준비중\n\n🌐 웹사이트: \n\n💻 소스코드: \n\n:::\n\n# **글쓰기** 챗GPT 인터페이스 - 오피스 전쟁 \n\n## 구글 검색의 종말(?)\n\n![](img/chatGPT-search.jpg){fig-align=\"center\" width=\"700\"}\n\n## 글쓰기 역사\n\n \n\n![](img/writing_history.jpg)\n\n::: aside\n- [문자와 종이 역사](https://r2bit.com/quarto/writing_history.html)\n:::\n\n## 오피스 전쟁 {.smaller}\n\n| 항목 | MS 오피스 [^1] | 구글 오피스 [^2] | 리브레 오피스 [^3] | 한컴 오피스 [^4] |\n|:-------------:|:-------------:|:-------------:|:-------------:|:-------------:|\n| 문서 작성 및 편집 | 워드, 엑셀, 파워포인트 등의 데스크톱 및 웹 앱 제공 | 구글 문서, 스프레드시트, 프레젠테이션 등의 웹 앱 제공 | 라이터, 캘크, 임프레스 등의 데스크톱 앱 제공 | 한글, 한셀, 한쇼 등의 데스크톱 및 모바일 앱 제공 |\n| 협업 및 공유 | 원드라이브를 통해 문서를 클라우드에 저장하고 공유 가능. 여러 사람이 동시에 문서를 수정할 수 있으나 실시간으로 보기 어려움 | 구글 드라이브를 통해 문서를 클라우드에 저장하고 공유 가능. 여러 사람이 동시에 문서를 수정하고 실시간으로 확인 가능 | 드롭박스나 구글 드라이브와 연동하여 문서를 클라우드에 저장하고 공유 가능. 여러 사람이 동시에 문서를 수정할 수 있으나 실시간으로 보기 어려움 | 넷프리즘을 통해 문서를 클라우드에 저장하고 공유 가능. 여러 사람이 동시에 문서를 수정할 수 있으나 실시간으로 보기 어려움 |\n| 이메일 및 채팅 | Outlook을 통해 비즈니스 메일 제공. Teams을 통해 채팅 및 화상 회의 가능 | Gmail을 통해 비즈니스 메일 제공. Chat과 Meet을 통해 채팅 및 화상 회의 가능 | 이메일 및 채팅 기능 없음 | 이메일 및 채팅 기능 없음 |\n| 가격 | 1인당 월 5\\~20달러 다양한 요금제 제공. 데스크톱 앱 사용 가능한 요금제는 12.5달러부터 시작 | 1인당 월 6\\~18달러까지 다양한 요금제 제공 | 완전 무료 | 개인용은 무료로 사용 가능하며 업무용은 별도로 견적 요청 필요 |\n\n[^1]: https://www.microsoft.com/ko-kr/microsoft-365/business\n\n[^2]: https://workspace.google.com/intl/ko_kr/\n\n[^3]: https://www.libreoffice.org/\n\n[^4]: https://www.hancom.com/product/productMain.do\n\n## 오피스 전쟁: 패러다임 충돌\n\n![](img/writing-evolution.jpg)\n\n## 챗GPT 시대 사무실\n\n::: panel-tabset\n### 챗GPT 사용원인\n\n![](img/chatGPT_why.jpg){width=\"600\"}\n\n### 인터페이스\n\n![](img/chatGPT_interface.jpg){width=\"500\"}\n\n### 챗GPT AS-IS\n\n![](img/chatGPT-AS-IS.jpg)\n\n### 챗GPT TO-BE\n\n![](img/chatGPT-TO-BE.jpg)\n:::\n\n## 챗GPT가 이룬 대통합\n\n![](img/chatGPT-Text-to-X.jpg)\n\n## 인터페이스 (Interface) {.smaller}\n\n::: panel-tabset\n### 진화과정\n\n
\n\n```{mermaid}\nflowchart TB\n \n subgraph A[\"사용자 인터페이스\"]\n direction LR\n CLI[\"CLI Command Line Interface 1950~\"] --> GUI[\"GUI Graphic User Inferface 1970~\"]\n GUI --> WI[\"Web Interface 1994~\"]\n WI --> MI[\"Mobile Interface 2007~\"]\n MI --> NUI[\"LUI Language User Interface 2023~\"]\n\n end\n\n\nclass A nodeStyle\n\nclassDef nodeStyle fill:#fcfbfa,stroke:#000000,stroke-width:0.7px,font-weight:bold,font-size:14px;\n```\n\n### CLI\n\n \n\n![](img/ui_cli.jpg)\n\n- \n\n### GUI\n\n \n\n![](img/ui_gui.jpg)\n\n- \n\n### WUI\n\n
\n\n![](img/ui_web.jpg)\n\n### MUI\n\n![](img/ui_mi.jpg)\n\n- \n\n### LUI\n\n![](img/sam_altman_LUI.jpg)\n\n- \n:::\n\n## 챗GPT NUI {.smaller}\n\n::: panel-tabset\n### 1:1 채팅\n\n- 챗GPT (ChatGPT)\n\n![](img/chatgpt_writing.gif){fig-align=\"center\" width=\"634\"}\n\n### 클릭하여 완료\n\n- OpenAI Playground\n\n![](img/ui_playground.jpg){fig-align=\"center\" width=\"645\"}\n\n### 자동완성\n\n- GitHub Copilot\n\n![](img/ui_copilot.gif){fig-align=\"center\"}\n\n- \n\n### 명령 팔레트\n\n::: columns\n::: column\n#### 사례\n\n::: r-stack\n![](img/command-tree.gif)\n\n::: fragment\n![](img/generate_code.gif)\n:::\n\n::: fragment\n{{< video https://blog.replit.com/images/ai/aimode_future.mp4 width=\"500\" height=\"400\" >}}\n:::\n:::\n\n- \n- \n:::\n\n::: column\n#### Command Palette 역사\n\n- 60년대로 거슬러 올라가는 명령 팔레트는 최근 기술 업계에서 다시 인기를 얻고 있으며 사용자 중심 소프트웨어의 필수적인 부분으로 간주됨.\n- CLI는 개인용 컴퓨터가 대중화되기 전 초기 컴퓨팅을 지배했으며 사용자가 시스템을 작동하기 위해 특정 명령을 알아야 했다. 1984년 Apple의 매킨토시와 함께 도입된 그래픽 사용자 인터페이스(GUI)는 중요한 혁신으로 여겨졌지만, 소프트웨어의 복잡성이 증가함에 따라 GUI만으로는 탐색하기가 점점 더 어려워졌다.\n- 사용자가 항목 이름의 짧은 약어입력하여 앱과 파일을 검색할 수 있는 런처가 점점 더 보편화 되었다. 예를 들어 2001년에 출시된 Mac OS X용 LaunchBar, Quicksilver, 2005년에 출시된 Apple의 시스템 전체 Spotlight가 있다. 검색과 CLI의 결합은 **Command Palette**의 탄생으로 이어졌다.\n- 오늘날 우리가 알고 있는 현대식 명령 팔레트는 2011년 Sublime Text 2 베타 Joe Skinner가 처음 소개. 명령줄 사용에 익숙한 프로그래머들이 단축키를 모두 외울 필요 없이 더 빠르게 작업할 수 있어 중요한 발전이 됨.\n:::\n:::\n:::\n\n---\neditor: \n markdown: \n wrap: 72\n---\n\n# 생성형 AI 데이터 사이언스\n\n## 포스터 제작\n\n::: panel-tabset\n### 포스터 시안\n\n![](img/plugin_canva.jpg){fig-align=\"center\" width=\"359\"}\n\n### 포스터 편집\n\n![](img/plugin_canva_edit.jpg){fig-align=\"center\" width=\"580\"}\n\n### 최종 포스터\n\n![](img/plugin_canva_poster.jpg){fig-align=\"center\" width=\"353\"}\n:::\n\n- [ShareGPT: Canva\n 사용사례](https://chat.openai.com/share/9689351d-6f4b-475c-96e4-618e46aca82b)\n\n## API 프로그래밍 {.smaller}\n\n::: panel-tabset\n### 준비 프롬프트\n\n> 웹사이트를 읽고 다음 지령을 준비해\n> https://apis.map.kakao.com/web/documentation/\n\n``` markdown\nKakao 지도 API 문서는 다양한 지도 관련 기능을 제공한다. 이 문서는 지도 객체 생성, 이벤트, 메서드 등에 대한 상세한 정보를 담고 있다. 아래는 주요 내용의 요약이다.\n\n### 지도 객체 생성\n- `kakao.maps.Map(container, options)`: 지도를 생성한다.\n - `container`: 지도가 표시될 HTML element\n - `options`: 중심 좌표, 확대 수준, 지도 종류 등을 설정할 수 있다.\n\n### 주요 메서드\n- `setCenter(latlng)`: 지도의 중심 좌표를 설정한다.\n- `getCenter()`: 지도의 중심 좌표를 반환한다.\n- `setLevel(level, options)`: 지도의 확대 수준을 설정한다.\n- `getLevel()`: 지도의 확대 수준을 반환한다.\n- `setMapTypeId(mapTypeId)`: 지도의 타입을 설정한다.\n- `getMapTypeId()`: 지도의 타입을 반환한다.\n\n### 이벤트\n- `center_changed`: 중심 좌표가 변경되면 발생한다.\n- `zoom_start`: 확대 수준이 변경되기 직전에 발생한다.\n- `zoom_changed`: 확대 수준이 변경되면 발생한다.\n- `click`: 지도를 클릭하면 발생한다.\n- `dblclick`: 지도를 더블클릭하면 발생한다.\n\n이 외에도 다양한 메서드와 이벤트가 있어, 개발자가 원하는 기능을 쉽게 구현할 수 있다.\n```\n\n### 코드제작 프롬프트롬\n\n> 주소를 넘기면 위경도 좌표를 반환하는 R 코드를 작성해줘.\n\nR에서 주소를 위경도 좌표로 변환하기 위해 `httr` 패키지를 사용하여 Kakao\nAPI를 호출한 예시 코드이다.\n\n``` r\n# 필요한 패키지를 설치하고 불러온다\ninstall.packages(\"httr\")\ninstall.packages(\"jsonlite\")\nlibrary(httr)\nlibrary(jsonlite)\n\n# 주소를 위경도로 변환하는 함수를 정의한다\nget_latlng <- function(address) {\n # Kakao API 키를 설정한다 (본인의 API 키로 교체해야 한다)\n api_key <- \"YOUR_KAKAO_API_KEY\"\n \n # API URL과 파라미터를 설정한다\n url <- \"https://dapi.kakao.com/v2/local/search/address.json\"\n params <- list(query = address)\n headers <- add_headers(\"Authorization\" = paste(\"KakaoAK\", api_key))\n \n # API를 호출한다\n response <- GET(url, query = params, headers)\n \n # 응답을 확인하고 JSON을 파싱한다\n if (status_code(response) == 200) {\n content <- content(response, \"text\", encoding = \"UTF-8\")\n json_data <- fromJSON(content)\n \n # 위경도를 추출한다\n if (json_data$meta$total_count > 0) {\n lat <- json_data$documents[[1]]$y\n lng <- json_data$documents[[1]]$x\n return(list(lat = lat, lng = lng))\n } else {\n return(NULL)\n }\n } else {\n stop(\"API request failed\")\n }\n}\n\n# 함수를 테스트한다\naddress <- \"서울특별시 강남구 테헤란로 212\"\nresult <- get_latlng(address)\nprint(paste(\"Latitude:\", result$lat, \"Longitude:\", result$lng))\n```\n\n### 코드수정\n\n::: {.cell}\n\n```{.r .cell-code code-line-numbers=\"10\"}\nlibrary(httr)\nlibrary(jsonlite)\n\n# 주소를 위경도로 변환하는 함수를 정의한다\nget_latlng <- function(address) {\n # Kakao API 키를 설정한다 (본인의 API 키로 교체해야 한다)\n api_key <- Sys.getenv(\"KAKAO_MAP_API_KEY\")\n \n # API URL과 파라미터를 설정한다\n url <- \"https://dapi.kakao.com/v2/local/search/address.json\"\n params <- list(query = address)\n headers <- add_headers(\"Authorization\" = paste(\"KakaoAK\", api_key))\n \n # API를 호출한다\n response <- GET(url, query = params, headers)\n \n # 응답을 확인하고 JSON을 파싱한다\n if (status_code(response) == 200) {\n content <- content(response, \"text\", encoding = \"UTF-8\")\n json_data <- fromJSON(content)\n \n # 위경도를 추출한다\n if (json_data$meta$total_count > 0) {\n lat <- json_data$documents[[1]]$y\n lng <- json_data$documents[[1]]$x\n return(list(lat = lat, lng = lng))\n } else {\n return(NULL)\n }\n } else {\n stop(\"API request failed\")\n }\n}\n\n# 가톨릭관동대학교 주소\naddress <- \"강원도 강릉시 범일로579번길 24\"\nresult <- get_latlng(address)\nprint(paste(\"Latitude:\", result$lat, \"Longitude:\", result$lng))\n```\n:::\n\n### 작업결과\n\n![](img/plugin_map.png){fig-align=\"center\" width=\"700\"}\n:::\n\n- [ShareGPT: API\n 사용사례](https://chat.openai.com/share/dcfee23a-0853-454b-9d8c-f76fc4474cb6),\n [플러그인(Plugin) - 칸바, 카카오맵,\n 울프람](https://r2bit.com/chatGPT/plugin.html)\n\n## 사실확인 (Wolfram) {.smaller}\n\n::: panel-tabset\n### 지구는 평평해?\n\n울프람 알파(Wolfram Alpha) 사용해서 사실관계를 확인해보자.\n\n> \"지구는 평평하다\"라는 주장을 검증해줘.\n\n``` \n\"지구는 평평하다\"라는 주장에 대해 Wolfram Alpha를 이용해 검증해보았습니다.\n\n### 입력 해석\n- 질문: 지구는 평평하다?\n\n### 결과\n- 답변: 아니다.\n - 지역적으로만 그렇다. 그리고 그것도 특정 지역, 예를 들어 미국 중서부에서만 해당된다.\n\n자세한 정보는 [Wolfram|Alpha 웹사이트](https://www6b3.wolframalpha.com/input?i=Is+the+Earth+flat%3F)에서 확인할 수 있다.\n\n이처럼 Wolfram Alpha는 다양한 주장이나 정보에 대한 팩트체크를 할 수 있는 유용한 도구이다.\n```\n\n- [Wolfram\\|Alpha\n 웹사이트](https://www6b3.wolframalpha.com/input?i=Is+the+Earth+flat%3F)\n\n### 라면은 건강에 안 좋아?\n\n> 라면을 많이 먹으면 건강에 정말 안좋은가?\n\nWolfram Alpha에서는 \"라면을 많이 먹으면 건강에 정말 안 좋은가?\"에 대한\n구체적인 답변을 제공하지 못했다. 그러나 일반적으로 라면은 높은 나트륨,\n지방, 인공 첨가물 등을 포함하고 있어, 과도하게 섭취할 경우 다음과 같은\n건강 문제가 발생할 수 있다:\n\n1. **고혈압**: 라면에는 나트륨이 많이 들어있다. 나트륨 과다 섭취는\n 혈압을 높일 수 있다.\n\n2. **비만**: 라면은 칼로리가 높고, 지방도 많이 들어있다. 지속적으로\n 라면을 많이 먹으면 체중 증가의 위험이 있다.\n\n3. **소화기 문제**: 라면은 소화가 잘 되지 않는 식품 중 하나이다. 과도한\n 섭취는 소화기에 부담을 줄 수 있다.\n\n4. **영양 불균형**: 라면은 영양소가 적고, 나트륨이나 지방 등의 불필요한\n 성분이 많다. 이로 인해 영양 불균형이 발생할 수 있다.\n\n5. **심혈관 질환**: 고혈압, 높은 콜레스테롤 등은 심혈관 질환의 위험을\n 높인다.\n\n라면을 즐길 때는 이러한 점들을 고려하여 적당한 양과 빈도로 섭취하는 것이\n중요하다.\n:::\n\n## 수능문제 풀이 {.smaller}\n\n::: panel-tabset\n### 2023 수능 수학\n\n2023학년도 대학수학능력시험 수학영역 문제를 풀어보자.\n\n![](img/plugin_wolfram.jpg)\n\n### 문제 풀이\n\n> $\\left(\\frac{4}{2^{\\sqrt{2}}}\\right)^{2+\\sqrt{2}}$ 값은?\n\n식 $$\n\\left(\\frac{4}{2^{\\sqrt{2}}}\\right)^{2+\\sqrt{2}}\n$$ 의 값은 $4$입니다.\n\n정확한 형태로는 $2^{(2 - \\sqrt{2}) (2 + \\sqrt{2})}$로 표현됩니다.\n\n자세한 정보는 [Wolfram\\|Alpha\n웹사이트](https://www6b3.wolframalpha.com/input?i=%284+%2F+%282%5E%28sqrt%282%29%29%29%29%5E%282+%2B+sqrt%282%29%29)에서\n확인할 수 있다.\n\n### 풀이 과정\n\n> 과정도 설명해줘.\n\n::: columns\n::: column\n물론이다. 주어진 식은 $$\n\\left(\\frac{4}{2^{\\sqrt{2}}}\\right)^{2+\\sqrt{2}}\n$$이다. 이 식을 단계별로 분해해보자.\n\n- 단계 1: 분모를 간단하게 만들기 먼저, 분모인 $2^{\\sqrt{2}}$를\n 간단하게 만들기 위해 분자와 분모에 $2^{\\sqrt{2}}$를 곱한다. 이렇게\n 하면:\n\n$$\n\\left(\\frac{4 \\times 2^{\\sqrt{2}}}{2^{\\sqrt{2}} \\times 2^{\\sqrt{2}}}\\right)^{2+\\sqrt{2}}\n$$\n\n- 단계 2: 분모를 합치기 이제 분모의\n $2^{\\sqrt{2}} \\times 2^{\\sqrt{2}}$를 합쳐 $2^{2\\sqrt{2}}$로 만든다.\n\n$$\n\\left(\\frac{4 \\times 2^{\\sqrt{2}}}{2^{2\\sqrt{2}}}\\right)^{2+\\sqrt{2}}\n$$\n:::\n\n::: column\n- 단계 3: 분자를 합치기 분자의 $4 \\times 2^{\\sqrt{2}}$를 합쳐\n $2^2 \\times 2^{\\sqrt{2}} = 2^{2+\\sqrt{2}}$로 만든다.\n\n$$\n\\left(\\frac{2^{2+\\sqrt{2}}}{2^{2\\sqrt{2}}}\\right)^{2+\\sqrt{2}}\n$$\n\n- 단계 4: 지수 법칙 적용 지수 법칙에 따라 분자와 분모의 지수를\n 빼준다.\n\n$$\n\\left(2^{(2+\\sqrt{2}) - 2\\sqrt{2}}\\right)^{2+\\sqrt{2}} = \\left(2^{(2 - \\sqrt{2})(2 + \\sqrt{2})}\\right)^{2+\\sqrt{2}}\n$$\n\n- 단계 5: 최종 계산 마지막으로, $(2 - \\sqrt{2})(2 + \\sqrt{2})$를\n 계산하면 $4 - 2 = 2$가 된다. 따라서 최종 결과는 $2^2 = 4$이다.\n\n이렇게 해서 $$\n\\left(\\frac{4}{2^{\\sqrt{2}}}\\right)^{2+\\sqrt{2}} = 4\n$$임을 확인할 수 있다.\n:::\n:::\n:::\n\n::: aside\n[[ShareGPT: 팩트체크와 수학문제\n풀이](https://chat.openai.com/share/e3e57271-9956-4348-abe9-4a87bc56a984)]{.aside}\n:::\n\n## OpenAI Advanced Data Analysis {.smaller}\n\n \n\n> Open AI Code Interpreter → Advanced Data Analysis → 챗GPT4\n\n \n\n![](img/km_code_interpreter.png)\n\n::: aside\n[생성AI 광명시 데이터 분석\n사례](https://r2bit.com/map_challenge/km_BitGPT.html)\n:::\n\n## RStudio Copilot\n\n> `Tools -> Global Options -> Copilot -> Enable Github Copilot`\n\n![](img/rstudio_copilot.jpg)\n\n## 웹앱(Shiny App) 개발 사례\n\n![](img/shiny_app_ci.gif)\n\n## 광명시 보좌관\n\n![](img/km_ai.gif){fig-align=\"center\" width=\"728\"}\n\n- [소스코드](https://github.com/bit2r/BitStat2)\n\n## RTutor & PandasAI\n\n![](img/rtutor_pandasai.png){fig-align=\"center\" width=\"450\"}\n\n::: aside\n- [챗GPT 데이터 과학](https://r2bit.com/gpt-ds/)\n:::\n\n# 도구(문서)의 인간 디지털 저작\n\n \n\n![](img/homo-faber.jpg)\n\n## 데이터 과학 과거와 현재 {.smaller}\n\n
\n\n::: columns\n::: column\n### 과거\n\n \n\n![](slideshow/202212-youtube/fig/jobshop.gif)\n:::\n\n::: column\n### 현재\n\n \n\n![](slideshow/202212-youtube/fig/quarto_to_go.gif)\n:::\n:::\n\n## 글쓰기 진화 {.smaller}\n\n::: panel-tabset\n### 글쓰기 역사\n\n![](img/writing_history.jpg)\n\n### 생산성과 자동화를 넘어\n\n![](img/writing-evolution.jpg)\n\n### 개발과 저작\n\n![](img/mermaid_docu_sw.jpg)\n\n\n\n\n\n\n\n\n\n\n\n package1 -->\n product1 -->\n distribute1 -->\n service1 -->\n\n\n\n\n\n\n\n\n\n\n package2 -->\n product2 -->\n distribute2 -->\n service2 -->\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n:::\n\n## 데이터 과학 → 디지털 글쓰기 {.smaller}\n\n::: panel-tabset\n### 데이터 과학\n\n![](img/horst-eco-r4ds.png)\n\n### 문서 구성요소\n\n![](img/data_science_document.jpg)\n\n### 문서 복잡성\n\n![](img/markdown-writing.png){width=\"880\"}\n\n### 문서 도구 개발 역사\n\n::: {.cell}\n\n:::\n\n::: {.cell}\n::: {.cell-output-display}\n\n```{=html}\n
\n```\n\n:::\n:::\n:::\n\n\n## 디지털 글쓰기 - 쿼토 {.smaller}\n\n::: panel-tabset\n### 삼권분립\n\n![](img/three-pillar.png){fig-align=\"center\" width=\"615\"}\n\n::: aside\n[챗GPT 디지털 글쓰기](https://r2bit.com/gpt-writing/)\n:::\n\n\n### 쿼토 소개\n\n \n\n![](img/horst_quarto_schematic.png)\n\n### 쿼토 작업흐름\n\n \n \n\n![](img/quarto_workflow_mermaid.png)\n\n\n\n\n\n\n\n 주피터 -->\n 마크다운 -->\n 팬독 -->\n pdf -->\n html -->\n docx -->\n knitr -->\n 마크다운 -->\n\n\n### 쿼토 \n\n| 기능 | R 마크다운 | 쿼토(Quarto) |\n|:-----------------:|:-----------------------------|:-----------------------|\n| 파일형식 | [html_document](https://pkgs.rstudio.com/rmarkdown/reference/html_document.html) / [pdf_document](https://pkgs.rstudio.com/rmarkdown/reference/pdf_document.html) / [word_document](https://pkgs.rstudio.com/rmarkdown/reference/word_document.html) | [html](https://quarto.org/docs/output-formats/html-basics.html) / [pdf](https://quarto.org/docs/output-formats/pdf-basics.html) / [docx](https://quarto.org/docs/output-formats/ms-word.html) |\n| 비머(Beamer) | [beamer_presentation](https://pkgs.rstudio.com/rmarkdown/reference/beamer_presentation.html) | [beamer](https://quarto.org/docs/presentations/beamer.html) |\n| 파워포인트(PPT) | [powerpoint_presentation](https://pkgs.rstudio.com/rmarkdown/reference/powerpoint_presentation.html) | [pptx](https://quarto.org/docs/presentations/powerpoint.html) |\n| 웹 슬라이드 | [xaringan](https://bookdown.org/yihui/rmarkdown/xaringan.html) / [ioslides](https://bookdown.org/yihui/rmarkdown/ioslides-presentation.html) / [revealjs](https://bookdown.org/yihui/rmarkdown/revealjs.html) | [revealjs](https://quarto.org/docs/presentations/revealjs/) |\n| 고급 레이아웃 | [tufte](https://bookdown.org/yihui/rmarkdown/tufte-handouts.html) / [distill](https://rstudio.github.io/distill/figures.html) | [Quarto Article Layout](https://quarto.org/docs/authoring/article-layout.html) |\n| 상호 참조 | [html_document2](https://bookdown.org/yihui/bookdown/a-single-document.html) / [pdf_document2](https://bookdown.org/yihui/bookdown/a-single-document.html) / [word_document2](https://bookdown.org/yihui/bookdown/a-single-document.html) | [Quarto Crossrefs](https://quarto.org/docs/authoring/cross-references.html) |\n| 웹사이트/블로그 | [blogdown](https://pkgs.rstudio.com/blogdown/) / [distill](https://pkgs.rstudio.com/distill/) | [Quarto Websites](https://quarto.org/docs/websites/) / [Quarto Blogs](https://quarto.org/docs/websites/website-blog.html) |\n| 책 | [bookdown](https://pkgs.rstudio.com/bookdown/) | [Quarto Books](https://quarto.org/docs/books/) |\n| 인터랙티브 문서 | [Shiny Documents](https://bookdown.org/yihui/rmarkdown/shiny-documents.html) | [Quarto Interactive Documents](https://quarto.org/docs/interactive/shiny/) |\n| 페이지 HTML | [pagedown](https://github.com/rstudio/pagedown) | 출시 예정 |\n| 학술 논문 | [rticles](https://pkgs.rstudio.com/rticles/) | [Quarto Journal Articles](https://quarto.org/docs/journals/) |\n| 대쉬보드 | [flexdashboard](https://pkgs.rstudio.com/flexdashboard/) | [Quarto Dashboards](https://quarto.org/docs/dashboards/) |\n| 인터랙티브 자습서 | [learnr](https://pkgs.rstudio.com/learnr/) | 계획 없음 |\n\n: R 마크다운과 쿼토 비교 {#tbl-quarto-rmarkdown}\n\n:::\n\n\n# 참고문헌\n\n::: {#refs}\n:::\n\n\n \n \n\n# 통계 → 데이터 사이언스 → 챗GPT 인공지능\n\n## 교육과정 {.smaller}\n\n::: panel-tabset\n### 종이와 연필\n\n![](img/cku_statistics.jpg){fig-align=\"center\" width=\"413\"}\n\n### 통계 보고서\n\n![](img/cku_sas_word.png){fig-align=\"center\" width=\"715\"}\n\n### DS 입문\n\n::: {.cell}\n::: {.cell-output-display}\n\n```{=html}\n
\n\n
\n \n
\n
\n
\n 연세대\n 데이터 사이언스 입문\n
\n
\n \n
\n
주차
\n
학습내용
\n
날짜
\n
\n \n \n
1
\n
데이터 과학 (Data Science)
\n
3월7일
\n
2
\n
프로그래밍 기초와 마크다운 보고서
\n
3월14일
\n
3
\n
데이터와 커뮤니티 찾기, 도움 청하기, 프로젝트 설정
\n
3월21일
\n
4
\n
데이터 수집
\n
-
\n
5
\n
자료구조(Data Structures)
\n
4월4일
\n
6
\n
데이터프레임과 SQL
\n
4월11일
\n
7
\n
버전제어, 협업, 그리고 저작권과 라이선스
\n
4월18일
\n
8
\n
중간고사
\n
4월25일
\n
9
\n
시각화 (Visualization)
\n
5월2일
\n
10
\n
정규표현식
\n
5월9일
\n
11
\n
데이터 과학 프로그래밍
\n
5월16일
\n
12
\n
데이터 과학 제품
\n
-
\n
13
\n
함수형 프로그래밍
\n
5월30일
\n
14
\n
데이터 과학 저작
\n
6월6일(현충일)
\n
15
\n
R 팩키지
\n
6월13일
\n
16
\n
기말고사
\n
6월20일
\n \n \n \n
\n
\n```\n\n:::\n:::\n\n- [연세대 \"데이터 과학 입문\"](https://statkclee.github.io/yonsei/)\n\n### 고급 DS\n\n::: {.cell}\n::: {.cell-output-display}\n\n```{=html}\n
- Quantifying performance indicators - Stats and Probability for Data Science\">
\n
Defining and solving problems - Quantifying performance indicators - Stats and Probability for Data Science
\n
\n
\n
-
\n
2주차
\n
\n
Data Science
\n
\n
- Kaggle: MPG / Titanic EDA 개념과 Data science 전체흐름 습득 - EDA, Feature engineering, Visualization, Correlating 등 preprocessing 작업 - Model, predict and evaluation 의 전체 과정을 습득\">
\n
Python 기초 문법 복습 및 NumPy, Pandas 등 연습 - Kaggle: MPG / Titanic EDA 개념과 Data science 전체흐름 습득 - EDA, Feature engineering, Visualization, Correlating 등 preprocessing 작업 - Model, predict and evaluation 의 전체 과정을 습득
\n
\n
\n
-
\n
3주차
\n
\n
Regression and Prediction
\n
\n
\n
Regression에 대한 개념 및 이론 설명
\n
\n
\n
Breast Cancer, California housing prices, Bike-sharing
\n
\n
3주차
\n
\n
Regression and Prediction
\n
\n
- Linear Regression 중심, CART, SVM, Ensemble기법 적용 - Training & Evaluation (MSE, MAE, RMSE, RMSLE, R-Squared, etc.) - Basic hyperparameter tuning 수행\">
\n
EDA 및 preprocessing - Linear Regression 중심, CART, SVM, Ensemble기법 적용 - Training & Evaluation (MSE, MAE, RMSE, RMSLE, R-Squared, etc.) - Basic hyperparameter tuning 수행
\n
\n
\n
-
\n
4주차
\n
\n
Classification and Hypothesis Testing
\n
\n
\n
Classification과 필요 개념 및 이론 설명
\n
\n
\n
Titanic, Iris, Penuins, San Francisco Crime
\n
\n
4주차
\n
\n
Classification and Hypothesis Testing
\n
\n
- Training & Evaluation / Basic hyperparameter tuning 수행\">
\n
Logistic Regression과 Decision Tree, SVC, Random Forest, XGBoost, LGBM 등 적용 - Training & Evaluation / Basic hyperparameter tuning 수행
\n
\n
\n
-
\n
5주차
\n
\n
Case Studies and Projects
\n
\n
- Case Study 및 Final Quiz 해설 - 개인 별 Project 인터뷰 및 Grouping / 공통과제 선정 - Project 진행, 발표, Best Project 선정 및 공유\">
\n
기존 수업 이론/실습 개념 바탕 Case Study 3종 (+Final Quiz) - Case Study 및 Final Quiz 해설 - 개인 별 Project 인터뷰 및 Grouping / 공통과제 선정 - Project 진행, 발표, Best Project 선정 및 공유
\n
\n
\n
-
\n \n \n \n
\n
\n```\n\n:::\n:::\n\n- [GS 칼텍스 데이터 사이언스](https://r2bit.com/curriculum/)\n\n\n### GS 칼텍스\n\n::: {.cell}\n::: {.cell-output-display}\n\n```{=html}\n
\n\n
\n \n
\n
\n
\n GS 칼텍스\n 데이터 과학\n
\n
\n \n
\n
일정
\n
과목명
\n
학습상세
\n
데이터셋
\n
\n \n \n
00주차
\n
환경설정
\n
학습 도구 설치 및 학습환경
\n
파머 펭귄, BitData
\n
01주차
\n
디지털 글쓰기(보고서)
\n
마크다운 / Quarto
\n
BitData
\n
02주차
\n
명령라인 데이터 분석
\n
자동화(Shell)
\n
SWC
\n
03주차
\n
버전 제어
\n
버전제어/협업(Git / GitHub / GitLab)
\n
\n
04주차
\n
프로그래밍
\n
SQL
\n
Data Carpentry, DVD 렌탈
\n
05주차
\n
프로그래밍
\n
시각화
\n
gapminder
\n
06주차
\n
프로그래밍
\n
파이썬
\n
\n
07주차
\n
대쉬보드
\n
Flexdashboard / Shinydashboard
\n
\n
08주차
\n
기계학습
\n
tidymodels / scikit-learn
\n
\n
09주차
\n
데이터 과학 제품
\n
RESTful API
\n
\n
10주차
\n
특수 데이터
\n
시계열(Time Series)
\n
KOSPI
\n
11주차
\n
특수 데이터
\n
공간정보(Geospatial) / 텍스트 분석
\n
미디어오늘
\n
12주차
\n
비정형 데이터
\n
텍스트와 이미지 (딥러닝)
\n
\n \n \n \n
\n
\n```\n\n:::\n:::\n\n- [GS 칼텍스 데이터 사이언스](https://r2bit.com/curriculum/)\n\n\n\n### 챗GPT DS {.smaller}\n\n::: {.cell}\n::: {.cell-output-display}\n\n```{=html}\n
\n
\n
\n\n
\n \n
\n
\n
\n 챗GPT 데이터 사이언스\n 건국대 전문교육과정\n
\n
\n \n
\n
강의주제
\n
강의내용
\n
수업방법
\n
\n \n \n
\n
1 주차 - 2023-07-01
\n
\n
데이터 사이언스 언어
\n
챗GPT와 데이터 사이언스
\n
핸즈온 실습
\n
데이터 사이언스 언어
\n
Tidyverse와 챗GPT
\n
핸즈온 실습
\n
데이터 사이언스 언어
\n
파이썬/R/SQL 그리고 API
\n
핸즈온 실습
\n
\n
2 주차 - 2023-07-08
\n
\n
소프트웨어 카펜트리 (기본기)
\n
자동화: 유닉스 쉘
\n
핸즈온 실습
\n
소프트웨어 카펜트리 (기본기)
\n
버전제어: Git / GitHub
\n
핸즈온 실습
\n
\n
3 주차 - 2023-07-15
\n
\n
소프트웨어 카펜트리 (기본기)
\n
파이썬 / R
\n
핸즈온 실습
\n
소프트웨어 카펜트리 (기본기)
\n
데이터베이스
\n
핸즈온 실습
\n
\n
4 주차 - 2023-07-22
\n
\n
데이터 과학 자료구조
\n
숫자/범주 --> 데이터프레임
\n
핸즈온 실습
\n
데이터 과학 자료구조
\n
날짜/공간정보/네트워크
\n
핸즈온 실습
\n
데이터 과학 자료구조
\n
텍스트/이미지/오디오
\n
핸즈온 실습
\n \n \n \n
\n
\n
\n
\n
\n\n
\n \n \n
\n
강의주제
\n
강의내용
\n
수업방법
\n
\n \n \n
\n
5 주차 - 2023-07-29
\n
\n
디지털 글쓰기, 대쉬보드, API 개발
\n
디지털 보고서(PDF, HTML, PPT)
\n
핸즈온 실습
\n
디지털 글쓰기, 대쉬보드, API 개발
\n
Serverless 대쉬보드, R/Python 대쉬보드
\n
핸즈온 실습
\n
디지털 글쓰기, 대쉬보드, API 개발
\n
기계학습 모형 API 배포
\n
핸즈온 실습
\n
\n
- 주차 - 2023-08-05
\n
\n
휴가
\n
휴가
\n
-
\n
\n
6 주차 - 2023-08-12
\n
\n
챗GPT와 오픈소스
\n
(오픈소스) 거대언어모형(LLM)
\n
핸즈온 실습
\n
챗GPT와 오픈소스
\n
Write/Draw/Coding/Reasoning
\n
핸즈온 실습
\n
챗GPT와 오픈소스
\n
AI 시대 데이터 사이언스 제품개발 방법
\n
핸즈온 실습
\n
\n
7 주차 - 2023-08-19
\n
\n
Prompt Engineering
\n
사용자 및 개발자를 위한 프롬프트 공학
\n
핸즈온 실습
\n
Prompt Engineering
\n
OpenAI API 기반 NLP 개발
\n
핸즈온 실습
\n
Prompt Engineering
\n
OPL(OpenAI, Pinecone, Langchain) 프레임워크
\n
핸즈온 실습
\n
\n
8 주차 - 2023-08-26
\n
\n
챗GPT AI 앱 프로젝트
\n
오픈소스 LLM 기반 AI 데이터 분석 제품
\n
핸즈온 실습
\n
챗GPT AI 앱 프로젝트
\n
데이터 사이언스 AutoGPT
\n
핸즈온 실습
\n
챗GPT AI 앱 프로젝트
\n
챗GPT AI 프로젝트 발표
\n
핸즈온 실습
\n \n \n \n
\n
\n
\n
\n```\n\n:::\n:::\n\n### 평가\n\n \n\n![](img/education_evaluation.jpg)\n\n- [데이터 사이언스 MCQ](https://r2bit.com/curriculum/mcq_stat.html)\n\n:::\n\n\n\n",
+ "supporting": [],
+ "filters": [
+ "rmarkdown/pagebreak.lua"
+ ],
+ "includes": {
+ "include-after-body": [
+ "\n\n\n"
+ ]
+ },
+ "engineDependencies": {},
+ "preserve": {},
+ "postProcess": true
+ }
+}
\ No newline at end of file
diff --git a/_freeze/slideshow/202404-sch/chatgpt-data-science/execute-results/html.json b/_freeze/slideshow/202404-sch/chatgpt-data-science/execute-results/html.json
new file mode 100644
index 0000000..5f572cb
--- /dev/null
+++ b/_freeze/slideshow/202404-sch/chatgpt-data-science/execute-results/html.json
@@ -0,0 +1,15 @@
+{
+ "hash": "febd361feb85b0a1da2e48f8711d4ae6",
+ "result": {
+ "engine": "knitr",
+ "markdown": "---\neditor: \n markdown: \n wrap: 72\n---\n\n\n# 생성형 AI 데이터 사이언스\n\n## 포스터 제작\n\n::: panel-tabset\n### 포스터 시안\n\n![](img/plugin_canva.jpg){fig-align=\"center\" width=\"359\"}\n\n### 포스터 편집\n\n![](img/plugin_canva_edit.jpg){fig-align=\"center\" width=\"580\"}\n\n### 최종 포스터\n\n![](img/plugin_canva_poster.jpg){fig-align=\"center\" width=\"353\"}\n:::\n\n- [ShareGPT: Canva\n 사용사례](https://chat.openai.com/share/9689351d-6f4b-475c-96e4-618e46aca82b)\n\n## API 프로그래밍 {.smaller}\n\n::: panel-tabset\n### 준비 프롬프트\n\n> 웹사이트를 읽고 다음 지령을 준비해\n> https://apis.map.kakao.com/web/documentation/\n\n``` markdown\nKakao 지도 API 문서는 다양한 지도 관련 기능을 제공한다. 이 문서는 지도 객체 생성, 이벤트, 메서드 등에 대한 상세한 정보를 담고 있다. 아래는 주요 내용의 요약이다.\n\n### 지도 객체 생성\n- `kakao.maps.Map(container, options)`: 지도를 생성한다.\n - `container`: 지도가 표시될 HTML element\n - `options`: 중심 좌표, 확대 수준, 지도 종류 등을 설정할 수 있다.\n\n### 주요 메서드\n- `setCenter(latlng)`: 지도의 중심 좌표를 설정한다.\n- `getCenter()`: 지도의 중심 좌표를 반환한다.\n- `setLevel(level, options)`: 지도의 확대 수준을 설정한다.\n- `getLevel()`: 지도의 확대 수준을 반환한다.\n- `setMapTypeId(mapTypeId)`: 지도의 타입을 설정한다.\n- `getMapTypeId()`: 지도의 타입을 반환한다.\n\n### 이벤트\n- `center_changed`: 중심 좌표가 변경되면 발생한다.\n- `zoom_start`: 확대 수준이 변경되기 직전에 발생한다.\n- `zoom_changed`: 확대 수준이 변경되면 발생한다.\n- `click`: 지도를 클릭하면 발생한다.\n- `dblclick`: 지도를 더블클릭하면 발생한다.\n\n이 외에도 다양한 메서드와 이벤트가 있어, 개발자가 원하는 기능을 쉽게 구현할 수 있다.\n```\n\n### 코드제작 프롬프트롬\n\n> 주소를 넘기면 위경도 좌표를 반환하는 R 코드를 작성해줘.\n\nR에서 주소를 위경도 좌표로 변환하기 위해 `httr` 패키지를 사용하여 Kakao\nAPI를 호출한 예시 코드이다.\n\n``` r\n# 필요한 패키지를 설치하고 불러온다\ninstall.packages(\"httr\")\ninstall.packages(\"jsonlite\")\nlibrary(httr)\nlibrary(jsonlite)\n\n# 주소를 위경도로 변환하는 함수를 정의한다\nget_latlng <- function(address) {\n # Kakao API 키를 설정한다 (본인의 API 키로 교체해야 한다)\n api_key <- \"YOUR_KAKAO_API_KEY\"\n \n # API URL과 파라미터를 설정한다\n url <- \"https://dapi.kakao.com/v2/local/search/address.json\"\n params <- list(query = address)\n headers <- add_headers(\"Authorization\" = paste(\"KakaoAK\", api_key))\n \n # API를 호출한다\n response <- GET(url, query = params, headers)\n \n # 응답을 확인하고 JSON을 파싱한다\n if (status_code(response) == 200) {\n content <- content(response, \"text\", encoding = \"UTF-8\")\n json_data <- fromJSON(content)\n \n # 위경도를 추출한다\n if (json_data$meta$total_count > 0) {\n lat <- json_data$documents[[1]]$y\n lng <- json_data$documents[[1]]$x\n return(list(lat = lat, lng = lng))\n } else {\n return(NULL)\n }\n } else {\n stop(\"API request failed\")\n }\n}\n\n# 함수를 테스트한다\naddress <- \"서울특별시 강남구 테헤란로 212\"\nresult <- get_latlng(address)\nprint(paste(\"Latitude:\", result$lat, \"Longitude:\", result$lng))\n```\n\n### 코드수정\n\n\n::: {.cell}\n\n```{.r .cell-code code-line-numbers=\"10\"}\nlibrary(httr)\nlibrary(jsonlite)\n\n# 주소를 위경도로 변환하는 함수를 정의한다\nget_latlng <- function(address) {\n # Kakao API 키를 설정한다 (본인의 API 키로 교체해야 한다)\n api_key <- Sys.getenv(\"KAKAO_MAP_API_KEY\")\n \n # API URL과 파라미터를 설정한다\n url <- \"https://dapi.kakao.com/v2/local/search/address.json\"\n params <- list(query = address)\n headers <- add_headers(\"Authorization\" = paste(\"KakaoAK\", api_key))\n \n # API를 호출한다\n response <- GET(url, query = params, headers)\n \n # 응답을 확인하고 JSON을 파싱한다\n if (status_code(response) == 200) {\n content <- content(response, \"text\", encoding = \"UTF-8\")\n json_data <- fromJSON(content)\n \n # 위경도를 추출한다\n if (json_data$meta$total_count > 0) {\n lat <- json_data$documents[[1]]$y\n lng <- json_data$documents[[1]]$x\n return(list(lat = lat, lng = lng))\n } else {\n return(NULL)\n }\n } else {\n stop(\"API request failed\")\n }\n}\n\n# 가톨릭관동대학교 주소\naddress <- \"강원도 강릉시 범일로579번길 24\"\nresult <- get_latlng(address)\nprint(paste(\"Latitude:\", result$lat, \"Longitude:\", result$lng))\n```\n:::\n\n\n### 작업결과\n\n![](img/plugin_map.png){fig-align=\"center\" width=\"700\"}\n:::\n\n- [ShareGPT: API\n 사용사례](https://chat.openai.com/share/dcfee23a-0853-454b-9d8c-f76fc4474cb6),\n [플러그인(Plugin) - 칸바, 카카오맵,\n 울프람](https://r2bit.com/chatGPT/plugin.html)\n\n## 사실확인 (Wolfram) {.smaller}\n\n::: panel-tabset\n### 지구는 평평해?\n\n울프람 알파(Wolfram Alpha) 사용해서 사실관계를 확인해보자.\n\n> \"지구는 평평하다\"라는 주장을 검증해줘.\n\n``` \n\"지구는 평평하다\"라는 주장에 대해 Wolfram Alpha를 이용해 검증해보았습니다.\n\n### 입력 해석\n- 질문: 지구는 평평하다?\n\n### 결과\n- 답변: 아니다.\n - 지역적으로만 그렇다. 그리고 그것도 특정 지역, 예를 들어 미국 중서부에서만 해당된다.\n\n자세한 정보는 [Wolfram|Alpha 웹사이트](https://www6b3.wolframalpha.com/input?i=Is+the+Earth+flat%3F)에서 확인할 수 있다.\n\n이처럼 Wolfram Alpha는 다양한 주장이나 정보에 대한 팩트체크를 할 수 있는 유용한 도구이다.\n```\n\n- [Wolfram\\|Alpha\n 웹사이트](https://www6b3.wolframalpha.com/input?i=Is+the+Earth+flat%3F)\n\n### 라면은 건강에 안 좋아?\n\n> 라면을 많이 먹으면 건강에 정말 안좋은가?\n\nWolfram Alpha에서는 \"라면을 많이 먹으면 건강에 정말 안 좋은가?\"에 대한\n구체적인 답변을 제공하지 못했다. 그러나 일반적으로 라면은 높은 나트륨,\n지방, 인공 첨가물 등을 포함하고 있어, 과도하게 섭취할 경우 다음과 같은\n건강 문제가 발생할 수 있다:\n\n1. **고혈압**: 라면에는 나트륨이 많이 들어있다. 나트륨 과다 섭취는\n 혈압을 높일 수 있다.\n\n2. **비만**: 라면은 칼로리가 높고, 지방도 많이 들어있다. 지속적으로\n 라면을 많이 먹으면 체중 증가의 위험이 있다.\n\n3. **소화기 문제**: 라면은 소화가 잘 되지 않는 식품 중 하나이다. 과도한\n 섭취는 소화기에 부담을 줄 수 있다.\n\n4. **영양 불균형**: 라면은 영양소가 적고, 나트륨이나 지방 등의 불필요한\n 성분이 많다. 이로 인해 영양 불균형이 발생할 수 있다.\n\n5. **심혈관 질환**: 고혈압, 높은 콜레스테롤 등은 심혈관 질환의 위험을\n 높인다.\n\n라면을 즐길 때는 이러한 점들을 고려하여 적당한 양과 빈도로 섭취하는 것이\n중요하다.\n:::\n\n## 수능문제 풀이 {.smaller}\n\n::: panel-tabset\n### 2023 수능 수학\n\n2023학년도 대학수학능력시험 수학영역 문제를 풀어보자.\n\n![](img/plugin_wolfram.jpg)\n\n### 문제 풀이\n\n> $\\left(\\frac{4}{2^{\\sqrt{2}}}\\right)^{2+\\sqrt{2}}$ 값은?\n\n식 $$\n\\left(\\frac{4}{2^{\\sqrt{2}}}\\right)^{2+\\sqrt{2}}\n$$ 의 값은 $4$입니다.\n\n정확한 형태로는 $2^{(2 - \\sqrt{2}) (2 + \\sqrt{2})}$로 표현됩니다.\n\n자세한 정보는 [Wolfram\\|Alpha\n웹사이트](https://www6b3.wolframalpha.com/input?i=%284+%2F+%282%5E%28sqrt%282%29%29%29%29%5E%282+%2B+sqrt%282%29%29)에서\n확인할 수 있다.\n\n### 풀이 과정\n\n> 과정도 설명해줘.\n\n::: columns\n::: column\n물론이다. 주어진 식은 $$\n\\left(\\frac{4}{2^{\\sqrt{2}}}\\right)^{2+\\sqrt{2}}\n$$이다. 이 식을 단계별로 분해해보자.\n\n- 단계 1: 분모를 간단하게 만들기 먼저, 분모인 $2^{\\sqrt{2}}$를\n 간단하게 만들기 위해 분자와 분모에 $2^{\\sqrt{2}}$를 곱한다. 이렇게\n 하면:\n\n$$\n\\left(\\frac{4 \\times 2^{\\sqrt{2}}}{2^{\\sqrt{2}} \\times 2^{\\sqrt{2}}}\\right)^{2+\\sqrt{2}}\n$$\n\n- 단계 2: 분모를 합치기 이제 분모의\n $2^{\\sqrt{2}} \\times 2^{\\sqrt{2}}$를 합쳐 $2^{2\\sqrt{2}}$로 만든다.\n\n$$\n\\left(\\frac{4 \\times 2^{\\sqrt{2}}}{2^{2\\sqrt{2}}}\\right)^{2+\\sqrt{2}}\n$$\n:::\n\n::: column\n- 단계 3: 분자를 합치기 분자의 $4 \\times 2^{\\sqrt{2}}$를 합쳐\n $2^2 \\times 2^{\\sqrt{2}} = 2^{2+\\sqrt{2}}$로 만든다.\n\n$$\n\\left(\\frac{2^{2+\\sqrt{2}}}{2^{2\\sqrt{2}}}\\right)^{2+\\sqrt{2}}\n$$\n\n- 단계 4: 지수 법칙 적용 지수 법칙에 따라 분자와 분모의 지수를\n 빼준다.\n\n$$\n\\left(2^{(2+\\sqrt{2}) - 2\\sqrt{2}}\\right)^{2+\\sqrt{2}} = \\left(2^{(2 - \\sqrt{2})(2 + \\sqrt{2})}\\right)^{2+\\sqrt{2}}\n$$\n\n- 단계 5: 최종 계산 마지막으로, $(2 - \\sqrt{2})(2 + \\sqrt{2})$를\n 계산하면 $4 - 2 = 2$가 된다. 따라서 최종 결과는 $2^2 = 4$이다.\n\n이렇게 해서 $$\n\\left(\\frac{4}{2^{\\sqrt{2}}}\\right)^{2+\\sqrt{2}} = 4\n$$임을 확인할 수 있다.\n:::\n:::\n:::\n\n::: aside\n[[ShareGPT: 팩트체크와 수학문제\n풀이](https://chat.openai.com/share/e3e57271-9956-4348-abe9-4a87bc56a984)]{.aside}\n:::\n\n## OpenAI Advanced Data Analysis {.smaller}\n\n \n\n> Open AI Code Interpreter → Advanced Data Analysis → 챗GPT4\n\n \n\n![](img/km_code_interpreter.png)\n\n::: aside\n[생성AI 광명시 데이터 분석\n사례](https://r2bit.com/map_challenge/km_BitGPT.html)\n:::\n\n## RStudio Copilot\n\n> `Tools -> Global Options -> Copilot -> Enable Github Copilot`\n\n![](img/rstudio_copilot.jpg)\n\n## 웹앱(Shiny App) 개발 사례\n\n![](img/shiny_app_ci.gif)\n\n## 광명시 보좌관\n\n![](img/km_ai.gif){fig-align=\"center\" width=\"728\"}\n\n- [소스코드](https://github.com/bit2r/BitStat2)\n\n## RTutor & PandasAI\n\n![](img/rtutor_pandasai.png){fig-align=\"center\" width=\"450\"}\n\n::: aside\n- [챗GPT 데이터 과학](https://r2bit.com/gpt-ds/)\n:::\n",
+ "supporting": [],
+ "filters": [
+ "rmarkdown/pagebreak.lua"
+ ],
+ "includes": {},
+ "engineDependencies": {},
+ "preserve": {},
+ "postProcess": true
+ }
+}
\ No newline at end of file
diff --git a/_freeze/slideshow/202404-sch/curriculum/execute-results/html.json b/_freeze/slideshow/202404-sch/curriculum/execute-results/html.json
new file mode 100644
index 0000000..b5002b6
--- /dev/null
+++ b/_freeze/slideshow/202404-sch/curriculum/execute-results/html.json
@@ -0,0 +1,15 @@
+{
+ "hash": "47515989bcfc0c96d4ded333d14ef11d",
+ "result": {
+ "engine": "knitr",
+ "markdown": "# 통계 → 데이터 사이언스 → 챗GPT 인공지능\n\n## 교육과정 {.smaller}\n\n::: panel-tabset\n### 종이와 연필\n\n![](img/cku_statistics.jpg){fig-align=\"center\" width=\"413\"}\n\n### 통계 보고서\n\n![](img/cku_sas_word.png){fig-align=\"center\" width=\"715\"}\n\n### DS 입문\n\n\n::: {.cell}\n\n```{.r .cell-code}\nlibrary(tidyverse)\nlibrary(rvest)\n\nlibrary(gt)\nlibrary(gtExtras)\n\nds_url <- \"https://statkclee.github.io/yonsei/\"\nds_html <- read_html(ds_url)\n\nds_html |> \n html_elements('table') |> \n html_table() %>%\n .[[1]] |> \n slice(2:n()) |> \n separate(X2, into = c(\"학습내용\", \"날짜\"), sep = \"-\") |> \n separate(학습내용, into = c(\"주차\", \"학습내용\"), sep = \"\\\\.\") |> \n select(주차, 학습내용, 날짜) |> \n drop_na() |> \n mutate(날짜 = str_trim(날짜),\n 학습내용 = str_trim(학습내용)) |> \n mutate(날짜 = if_else(str_detect(날짜, \"^\\\\d\"), 날짜, NA_character_)) |> \n gt() |> \n gt_theme_pff() |> \n sub_missing(\n columns = 날짜,\n missing_text = \"-\"\n ) |> \n cols_align(\"center\") |> \n opt_table_font(\n font = list(\n google_font(name = \"Sunflower\"),\n \"NanumGothic\"\n )\n ) %>% \n tab_style(\n style = list(\n \"font-variant: small-caps;\"\n ),\n locations = cells_body(columns = everything())\n ) %>% \n tab_header(\n title =\n htmltools::tagList(\n htmltools::tags$div(\n style = htmltools::css(\n `text-align` = \"center\"\n ),\n htmltools::HTML(\n web_image(\"img/curriculum_yonsei.png\")\n )\n ),\n htmltools::tags$div(\n htmltools::tags$strong(\"연세대\"),\n \"데이터 사이언스 입문\"\n )\n )\n ) |> \n tab_options(\n table.width = \"65%\",\n heading.title.font.size = px(12)\n )\n```\n\n::: {.cell-output-display}\n\n```{=html}\n
- Quantifying performance indicators - Stats and Probability for Data Science\">
\n
Defining and solving problems - Quantifying performance indicators - Stats and Probability for Data Science
\n
\n
\n
-
\n
2주차
\n
\n
Data Science
\n
\n
- Kaggle: MPG / Titanic EDA 개념과 Data science 전체흐름 습득 - EDA, Feature engineering, Visualization, Correlating 등 preprocessing 작업 - Model, predict and evaluation 의 전체 과정을 습득\">
\n
Python 기초 문법 복습 및 NumPy, Pandas 등 연습 - Kaggle: MPG / Titanic EDA 개념과 Data science 전체흐름 습득 - EDA, Feature engineering, Visualization, Correlating 등 preprocessing 작업 - Model, predict and evaluation 의 전체 과정을 습득
\n
\n
\n
-
\n
3주차
\n
\n
Regression and Prediction
\n
\n
\n
Regression에 대한 개념 및 이론 설명
\n
\n
\n
Breast Cancer, California housing prices, Bike-sharing
\n
\n
3주차
\n
\n
Regression and Prediction
\n
\n
- Linear Regression 중심, CART, SVM, Ensemble기법 적용 - Training & Evaluation (MSE, MAE, RMSE, RMSLE, R-Squared, etc.) - Basic hyperparameter tuning 수행\">
\n
EDA 및 preprocessing - Linear Regression 중심, CART, SVM, Ensemble기법 적용 - Training & Evaluation (MSE, MAE, RMSE, RMSLE, R-Squared, etc.) - Basic hyperparameter tuning 수행
\n
\n
\n
-
\n
4주차
\n
\n
Classification and Hypothesis Testing
\n
\n
\n
Classification과 필요 개념 및 이론 설명
\n
\n
\n
Titanic, Iris, Penuins, San Francisco Crime
\n
\n
4주차
\n
\n
Classification and Hypothesis Testing
\n
\n
- Training & Evaluation / Basic hyperparameter tuning 수행\">
\n
Logistic Regression과 Decision Tree, SVC, Random Forest, XGBoost, LGBM 등 적용 - Training & Evaluation / Basic hyperparameter tuning 수행
\n
\n
\n
-
\n
5주차
\n
\n
Case Studies and Projects
\n
\n
- Case Study 및 Final Quiz 해설 - 개인 별 Project 인터뷰 및 Grouping / 공통과제 선정 - Project 진행, 발표, Best Project 선정 및 공유\">
\n
기존 수업 이론/실습 개념 바탕 Case Study 3종 (+Final Quiz) - Case Study 및 Final Quiz 해설 - 개인 별 Project 인터뷰 및 Grouping / 공통과제 선정 - Project 진행, 발표, Best Project 선정 및 공유
\n
\n
\n
-
\n \n \n \n
\n
\n```\n\n:::\n:::\n\n\n- [GS 칼텍스 데이터 사이언스](https://r2bit.com/curriculum/)\n\n\n### GS 칼텍스\n\n\n::: {.cell}\n::: {.cell-output-display}\n\n```{=html}\n
60년대로 거슬러 올라가는 명령 팔레트는 최근 기술 업계에서 다시 인기를 얻고 있으며 사용자 중심 소프트웨어의 필수적인 부분으로 간주됨.
+
CLI는 개인용 컴퓨터가 대중화되기 전 초기 컴퓨팅을 지배했으며 사용자가 시스템을 작동하기 위해 특정 명령을 알아야 했다. 1984년 Apple의 매킨토시와 함께 도입된 그래픽 사용자 인터페이스(GUI)는 중요한 혁신으로 여겨졌지만, 소프트웨어의 복잡성이 증가함에 따라 GUI만으로는 탐색하기가 점점 더 어려워졌다.
+
사용자가 항목 이름의 짧은 약어입력하여 앱과 파일을 검색할 수 있는 런처가 점점 더 보편화 되었다. 예를 들어 2001년에 출시된 Mac OS X용 LaunchBar, Quicksilver, 2005년에 출시된 Apple의 시스템 전체 Spotlight가 있다. 검색과 CLI의 결합은 Command Palette의 탄생으로 이어졌다.
+
오늘날 우리가 알고 있는 현대식 명령 팔레트는 2011년 Sublime Text 2 베타 Joe Skinner가 처음 소개. 명령줄 사용에 익숙한 프로그래머들이 단축키를 모두 외울 필요 없이 더 빠르게 작업할 수 있어 중요한 발전이 됨.
웹사이트를 읽고 다음 지령을 준비해 https://apis.map.kakao.com/web/documentation/
+
+
Kakao 지도 API 문서는 다양한 지도 관련 기능을 제공한다. 이 문서는 지도 객체 생성, 이벤트, 메서드 등에 대한 상세한 정보를 담고 있다. 아래는 주요 내용의 요약이다.
+
+### 지도 객체 생성
+- `kakao.maps.Map(container, options)`: 지도를 생성한다.
+ - `container`: 지도가 표시될 HTML element
+ - `options`: 중심 좌표, 확대 수준, 지도 종류 등을 설정할 수 있다.
+
+### 주요 메서드
+- `setCenter(latlng)`: 지도의 중심 좌표를 설정한다.
+- `getCenter()`: 지도의 중심 좌표를 반환한다.
+- `setLevel(level, options)`: 지도의 확대 수준을 설정한다.
+- `getLevel()`: 지도의 확대 수준을 반환한다.
+- `setMapTypeId(mapTypeId)`: 지도의 타입을 설정한다.
+- `getMapTypeId()`: 지도의 타입을 반환한다.
+
+### 이벤트
+- `center_changed`: 중심 좌표가 변경되면 발생한다.
+- `zoom_start`: 확대 수준이 변경되기 직전에 발생한다.
+- `zoom_changed`: 확대 수준이 변경되면 발생한다.
+- `click`: 지도를 클릭하면 발생한다.
+- `dblclick`: 지도를 더블클릭하면 발생한다.
+
+이 외에도 다양한 메서드와 이벤트가 있어, 개발자가 원하는 기능을 쉽게 구현할 수 있다.
+
+
+
+
주소를 넘기면 위경도 좌표를 반환하는 R 코드를 작성해줘.
+
+
R에서 주소를 위경도 좌표로 변환하기 위해 httr 패키지를 사용하여 Kakao API를 호출한 예시 코드이다.
"지구는 평평하다"라는 주장에 대해 Wolfram Alpha를 이용해 검증해보았습니다.
+
+### 입력 해석
+- 질문: 지구는 평평하다?
+
+### 결과
+- 답변: 아니다.
+ - 지역적으로만 그렇다. 그리고 그것도 특정 지역, 예를 들어 미국 중서부에서만 해당된다.
+
+자세한 정보는 [Wolfram|Alpha 웹사이트](https://www6b3.wolframalpha.com/input?i=Is+the+Earth+flat%3F)에서 확인할 수 있다.
+
+이처럼 Wolfram Alpha는 다양한 주장이나 정보에 대한 팩트체크를 할 수 있는 유용한 도구이다.
Defining and solving problems - Quantifying performance indicators - Stats and Probability for Data Science
+
+
-
+
+
+
2주차
+
Data Science
+
+
Python 기초 문법 복습 및 NumPy, Pandas 등 연습 - Kaggle: MPG / Titanic EDA 개념과 Data science 전체흐름 습득 - EDA, Feature engineering, Visualization, Correlating 등 preprocessing 작업 - Model, predict and evaluation 의 전체 과정을 습득
+
+
-
+
+
+
3주차
+
Regression and Prediction
+
+
Regression에 대한 개념 및 이론 설명
+
+
Breast Cancer, California housing prices, Bike-sharing
+
+
+
3주차
+
Regression and Prediction
+
+
EDA 및 preprocessing - Linear Regression 중심, CART, SVM, Ensemble기법 적용 - Training & Evaluation (MSE, MAE, RMSE, RMSLE, R-Squared, etc.) - Basic hyperparameter tuning 수행
+
+
-
+
+
+
4주차
+
Classification and Hypothesis Testing
+
+
Classification과 필요 개념 및 이론 설명
+
+
Titanic, Iris, Penuins, San Francisco Crime
+
+
+
4주차
+
Classification and Hypothesis Testing
+
+
Logistic Regression과 Decision Tree, SVC, Random Forest, XGBoost, LGBM 등 적용 - Training & Evaluation / Basic hyperparameter tuning 수행
+
+
-
+
+
+
5주차
+
Case Studies and Projects
+
+
기존 수업 이론/실습 개념 바탕 Case Study 3종 (+Final Quiz) - Case Study 및 Final Quiz 해설 - 개인 별 Project 인터뷰 및 Grouping / 공통과제 선정 - Project 진행, 발표, Best Project 선정 및 공유
웹사이트를 읽고 다음 지령을 준비해 https://apis.map.kakao.com/web/documentation/
+
+
Kakao 지도 API 문서는 다양한 지도 관련 기능을 제공한다. 이 문서는 지도 객체 생성, 이벤트, 메서드 등에 대한 상세한 정보를 담고 있다. 아래는 주요 내용의 요약이다.
+
+### 지도 객체 생성
+- `kakao.maps.Map(container, options)`: 지도를 생성한다.
+ - `container`: 지도가 표시될 HTML element
+ - `options`: 중심 좌표, 확대 수준, 지도 종류 등을 설정할 수 있다.
+
+### 주요 메서드
+- `setCenter(latlng)`: 지도의 중심 좌표를 설정한다.
+- `getCenter()`: 지도의 중심 좌표를 반환한다.
+- `setLevel(level, options)`: 지도의 확대 수준을 설정한다.
+- `getLevel()`: 지도의 확대 수준을 반환한다.
+- `setMapTypeId(mapTypeId)`: 지도의 타입을 설정한다.
+- `getMapTypeId()`: 지도의 타입을 반환한다.
+
+### 이벤트
+- `center_changed`: 중심 좌표가 변경되면 발생한다.
+- `zoom_start`: 확대 수준이 변경되기 직전에 발생한다.
+- `zoom_changed`: 확대 수준이 변경되면 발생한다.
+- `click`: 지도를 클릭하면 발생한다.
+- `dblclick`: 지도를 더블클릭하면 발생한다.
+
+이 외에도 다양한 메서드와 이벤트가 있어, 개발자가 원하는 기능을 쉽게 구현할 수 있다.
+
+
+
+
주소를 넘기면 위경도 좌표를 반환하는 R 코드를 작성해줘.
+
+
R에서 주소를 위경도 좌표로 변환하기 위해 httr 패키지를 사용하여 Kakao API를 호출한 예시 코드이다.
"지구는 평평하다"라는 주장에 대해 Wolfram Alpha를 이용해 검증해보았습니다.
+
+### 입력 해석
+- 질문: 지구는 평평하다?
+
+### 결과
+- 답변: 아니다.
+ - 지역적으로만 그렇다. 그리고 그것도 특정 지역, 예를 들어 미국 중서부에서만 해당된다.
+
+자세한 정보는 [Wolfram|Alpha 웹사이트](https://www6b3.wolframalpha.com/input?i=Is+the+Earth+flat%3F)에서 확인할 수 있다.
+
+이처럼 Wolfram Alpha는 다양한 주장이나 정보에 대한 팩트체크를 할 수 있는 유용한 도구이다.
Defining and solving problems - Quantifying performance indicators - Stats and Probability for Data Science
+
+
-
+
+
+
2주차
+
Data Science
+
+
Python 기초 문법 복습 및 NumPy, Pandas 등 연습 - Kaggle: MPG / Titanic EDA 개념과 Data science 전체흐름 습득 - EDA, Feature engineering, Visualization, Correlating 등 preprocessing 작업 - Model, predict and evaluation 의 전체 과정을 습득
+
+
-
+
+
+
3주차
+
Regression and Prediction
+
+
Regression에 대한 개념 및 이론 설명
+
+
Breast Cancer, California housing prices, Bike-sharing
+
+
+
3주차
+
Regression and Prediction
+
+
EDA 및 preprocessing - Linear Regression 중심, CART, SVM, Ensemble기법 적용 - Training & Evaluation (MSE, MAE, RMSE, RMSLE, R-Squared, etc.) - Basic hyperparameter tuning 수행
+
+
-
+
+
+
4주차
+
Classification and Hypothesis Testing
+
+
Classification과 필요 개념 및 이론 설명
+
+
Titanic, Iris, Penuins, San Francisco Crime
+
+
+
4주차
+
Classification and Hypothesis Testing
+
+
Logistic Regression과 Decision Tree, SVC, Random Forest, XGBoost, LGBM 등 적용 - Training & Evaluation / Basic hyperparameter tuning 수행
+
+
-
+
+
+
5주차
+
Case Studies and Projects
+
+
기존 수업 이론/실습 개념 바탕 Case Study 3종 (+Final Quiz) - Case Study 및 Final Quiz 해설 - 개인 별 Project 인터뷰 및 Grouping / 공통과제 선정 - Project 진행, 발표, Best Project 선정 및 공유
60년대로 거슬러 올라가는 명령 팔레트는 최근 기술 업계에서 다시 인기를 얻고 있으며 사용자 중심 소프트웨어의 필수적인 부분으로 간주됨.
+
CLI는 개인용 컴퓨터가 대중화되기 전 초기 컴퓨팅을 지배했으며 사용자가 시스템을 작동하기 위해 특정 명령을 알아야 했다. 1984년 Apple의 매킨토시와 함께 도입된 그래픽 사용자 인터페이스(GUI)는 중요한 혁신으로 여겨졌지만, 소프트웨어의 복잡성이 증가함에 따라 GUI만으로는 탐색하기가 점점 더 어려워졌다.
+
사용자가 항목 이름의 짧은 약어입력하여 앱과 파일을 검색할 수 있는 런처가 점점 더 보편화 되었다. 예를 들어 2001년에 출시된 Mac OS X용 LaunchBar, Quicksilver, 2005년에 출시된 Apple의 시스템 전체 Spotlight가 있다. 검색과 CLI의 결합은 Command Palette의 탄생으로 이어졌다.
+
오늘날 우리가 알고 있는 현대식 명령 팔레트는 2011년 Sublime Text 2 베타 Joe Skinner가 처음 소개. 명령줄 사용에 익숙한 프로그래머들이 단축키를 모두 외울 필요 없이 더 빠르게 작업할 수 있어 중요한 발전이 됨.
+
+
+
+
+
+
\ No newline at end of file
diff --git a/img/quarto_workflow_mermaid.png b/img/quarto_workflow_mermaid.png
new file mode 100644
index 0000000..1a2ed16
Binary files /dev/null and b/img/quarto_workflow_mermaid.png differ
diff --git a/img/rtutor_pandasai.png b/img/rtutor_pandasai.png
new file mode 100644
index 0000000..1523c82
Binary files /dev/null and b/img/rtutor_pandasai.png differ
diff --git a/metadata.yml b/metadata.yml
index a56e143..4ce7f9f 100644
--- a/metadata.yml
+++ b/metadata.yml
@@ -1,5 +1,23 @@
# Internal slide decks
+- title: "챗GPT 데이터 사이언스"
+ subtitle: "데이터 사이언스 패러다임 전환"
+ author: "이광춘"
+ date: 2024-04-29
+ image: img/sch_logo.jpg
+ path: chatgpt_sch_202404.qmd
+ categories:
+ - "챗GPT"
+ - "인공지능"
+ - "R마크다운"
+ - "서울 R 미트업"
+ - "패러다임 전환"
+ - "데이터 과학"
+ - "한국 R 사용자회"
+ - "쿼토(Quarto)"
+ - "R/Tidyverse"
+ - "LLM"
+
- title: "차세대 대쉬보드"
subtitle: "flexdashboard → 쿼토 대시보드"
author: "이광춘"
diff --git a/slideshow/20230324-kwangmyung/index.ipynb b/slideshow/20230324-kwangmyung/index.ipynb
index c236660..61796b0 100644
--- a/slideshow/20230324-kwangmyung/index.ipynb
+++ b/slideshow/20230324-kwangmyung/index.ipynb
@@ -26,7 +26,7 @@
" chunk_output_type: console\n",
"---"
],
- "id": "d118df53"
+ "id": "141b17c3"
},
{
"cell_type": "markdown",
@@ -379,7 +379,7 @@
"\n",
"### 크롤링: 코드"
],
- "id": "e0449942"
+ "id": "68ee5e94"
},
{
"cell_type": "code",
@@ -444,7 +444,7 @@
"# Print a confirmation message\n",
"print('samsung.csv saved successfully.')"
],
- "id": "9880209f",
+ "id": "7ac64a85",
"execution_count": null,
"outputs": []
},
@@ -598,7 +598,7 @@
"\n",
"### `Sympy` 동원"
],
- "id": "4f13266f"
+ "id": "04d24c34"
},
{
"cell_type": "code",
@@ -610,7 +610,7 @@
"Diophantus_puzzle = x/6 + x/12 + x/7 + 5 + x/2 + 4 - x\n",
"solve(Diophantus_puzzle, x, dict = True)"
],
- "id": "26daded5",
+ "id": "07f374d8",
"execution_count": null,
"outputs": []
},
@@ -708,7 +708,7 @@
"\n",
":::\n"
],
- "id": "1ce6a1b7"
+ "id": "e215f30f"
}
],
"metadata": {
diff --git a/slideshow/202304-gpt/index.ipynb b/slideshow/202304-gpt/index.ipynb
index 1f398b6..c4587cf 100644
--- a/slideshow/202304-gpt/index.ipynb
+++ b/slideshow/202304-gpt/index.ipynb
@@ -26,7 +26,7 @@
" chunk_output_type: console\n",
"---"
],
- "id": "439b0d32"
+ "id": "5c07d544"
},
{
"cell_type": "markdown",
@@ -327,7 +327,7 @@
"\n",
"### `Sympy` 동원"
],
- "id": "57c0adcf"
+ "id": "fae004d3"
},
{
"cell_type": "code",
@@ -339,7 +339,7 @@
"Diophantus_puzzle = x/6 + x/12 + x/7 + 5 + x/2 + 4 - x\n",
"solve(Diophantus_puzzle, x, dict = True)"
],
- "id": "a85446e0",
+ "id": "f5531281",
"execution_count": null,
"outputs": []
},
@@ -562,7 +562,7 @@
"::: {#refs}\n",
":::\n"
],
- "id": "5560cf70"
+ "id": "4c3c53cb"
}
],
"metadata": {
diff --git a/slideshow/202404-sch/book.qmd b/slideshow/202404-sch/book.qmd
new file mode 100644
index 0000000..e26fe71
--- /dev/null
+++ b/slideshow/202404-sch/book.qmd
@@ -0,0 +1,109 @@
+# 챗GPT 도서출판
+
+## 챗GPT 데이터 과학 도서 {.smaller}
+
+::: panel-tabset
+### 챗GPT 시리즈
+
+![](img/book/chatGPT_series3.png){fig-align="center" width="552"}
+
+### 데이터 과학
+
+::: {#chatGPT-ds layout-ncol="2"}
+![](img/book/cover_ds.jpg){fig-align="center" width="250"}
+
+![](img/book/ds_logo.png){fig-align="center" width="300"}
+:::
+
+📘 교보 POD 종이책:
+
+📗 교보 전자책:
+
+🌐 웹사이트:
+
+💻 소스코드: [@lee2024ds]
+
+### 코딩
+
+::: {#chatGPT-coding layout-ncol="2"}
+![](img/book/cover_coding.jpg){fig-align="center" width="250"}
+
+![](img/book/coding_logo.png){fig-align="center" width="300"}
+:::
+
+📘 교보 POD 종이책:
+
+📗 교보 전자책:
+
+🌐 웹사이트:
+
+💻 소스코드: [@lee2024coding]
+
+### 쿼토
+
+::: {#chatGPT-sql layout-ncol="2"}
+![](img/book/cover_quarto.jpg){fig-align="center" width="250"}
+
+![](img/book/quarto_logo){fig-align="center" width="300"}
+:::
+
+📘 교보 POD 종이책:
+
+📗 교보 전자책:
+
+🌐 웹사이트:
+
+💻 소스코드: [@lee2024quarto]
+
+### SQL
+
+::: {layout-ncol="2"}
+![](img/book/sql_cover.jpg){fig-align="center" width="250"}
+
+![](img/book/sql_logo.png){fig-align="center" width="300"}
+:::
+
+📘 교보 POD 종이책:
+
+📗 교보 전자책:
+
+🌐 웹사이트:
+
+💻 소스코드: [@lee2024sql]
+
+### 유닉스 쉘
+
+::: {#chatGPT-shell layout-ncol="2"}
+![](img/book/cover_unix.jpg){fig-align="center" width="250"}
+
+![](img/book/hex_chatGPT_unix_shell_02.png){fig-align="center" width="300"}
+:::
+
+📘 교보 POD 종이책:
+
+📗 교보 전자책: [https://bit.ly/KzUdOU](https://bit.ly/3KzUdOU)
+
+🌐 웹사이트:
+
+💻 소스코드: [https://bit.ly/3wrgeuP](https://bit.ly/49p0I1f) [@lee2023shell]
+
+📰 뉴스기사: [챗GPT가 던진 새 가능성, 데이터 과학 분야 통해 미리 살펴보기](https://omn.kr/25f0i)
+
+
+### 확률통계
+
+::: {#chatGPT-ds layout-ncol="2"}
+
+준비중
+
+:::
+
+📘 교보 POD 종이책: 준비중
+
+📗 교보 전자책: 준비중
+
+🌐 웹사이트:
+
+💻 소스코드:
+
+:::
diff --git a/slideshow/202404-sch/chatgpt-data-science.qmd b/slideshow/202404-sch/chatgpt-data-science.qmd
new file mode 100644
index 0000000..b8a5268
--- /dev/null
+++ b/slideshow/202404-sch/chatgpt-data-science.qmd
@@ -0,0 +1,341 @@
+---
+editor:
+ markdown:
+ wrap: 72
+---
+
+# 생성형 AI 데이터 사이언스
+
+## 포스터 제작
+
+::: panel-tabset
+### 포스터 시안
+
+![](img/plugin_canva.jpg){fig-align="center" width="359"}
+
+### 포스터 편집
+
+![](img/plugin_canva_edit.jpg){fig-align="center" width="580"}
+
+### 최종 포스터
+
+![](img/plugin_canva_poster.jpg){fig-align="center" width="353"}
+:::
+
+- [ShareGPT: Canva
+ 사용사례](https://chat.openai.com/share/9689351d-6f4b-475c-96e4-618e46aca82b)
+
+## API 프로그래밍 {.smaller}
+
+::: panel-tabset
+### 준비 프롬프트
+
+> 웹사이트를 읽고 다음 지령을 준비해
+> https://apis.map.kakao.com/web/documentation/
+
+``` markdown
+Kakao 지도 API 문서는 다양한 지도 관련 기능을 제공한다. 이 문서는 지도 객체 생성, 이벤트, 메서드 등에 대한 상세한 정보를 담고 있다. 아래는 주요 내용의 요약이다.
+
+### 지도 객체 생성
+- `kakao.maps.Map(container, options)`: 지도를 생성한다.
+ - `container`: 지도가 표시될 HTML element
+ - `options`: 중심 좌표, 확대 수준, 지도 종류 등을 설정할 수 있다.
+
+### 주요 메서드
+- `setCenter(latlng)`: 지도의 중심 좌표를 설정한다.
+- `getCenter()`: 지도의 중심 좌표를 반환한다.
+- `setLevel(level, options)`: 지도의 확대 수준을 설정한다.
+- `getLevel()`: 지도의 확대 수준을 반환한다.
+- `setMapTypeId(mapTypeId)`: 지도의 타입을 설정한다.
+- `getMapTypeId()`: 지도의 타입을 반환한다.
+
+### 이벤트
+- `center_changed`: 중심 좌표가 변경되면 발생한다.
+- `zoom_start`: 확대 수준이 변경되기 직전에 발생한다.
+- `zoom_changed`: 확대 수준이 변경되면 발생한다.
+- `click`: 지도를 클릭하면 발생한다.
+- `dblclick`: 지도를 더블클릭하면 발생한다.
+
+이 외에도 다양한 메서드와 이벤트가 있어, 개발자가 원하는 기능을 쉽게 구현할 수 있다.
+```
+
+### 코드제작 프롬프트롬
+
+> 주소를 넘기면 위경도 좌표를 반환하는 R 코드를 작성해줘.
+
+R에서 주소를 위경도 좌표로 변환하기 위해 `httr` 패키지를 사용하여 Kakao
+API를 호출한 예시 코드이다.
+
+``` r
+# 필요한 패키지를 설치하고 불러온다
+install.packages("httr")
+install.packages("jsonlite")
+library(httr)
+library(jsonlite)
+
+# 주소를 위경도로 변환하는 함수를 정의한다
+get_latlng <- function(address) {
+ # Kakao API 키를 설정한다 (본인의 API 키로 교체해야 한다)
+ api_key <- "YOUR_KAKAO_API_KEY"
+
+ # API URL과 파라미터를 설정한다
+ url <- "https://dapi.kakao.com/v2/local/search/address.json"
+ params <- list(query = address)
+ headers <- add_headers("Authorization" = paste("KakaoAK", api_key))
+
+ # API를 호출한다
+ response <- GET(url, query = params, headers)
+
+ # 응답을 확인하고 JSON을 파싱한다
+ if (status_code(response) == 200) {
+ content <- content(response, "text", encoding = "UTF-8")
+ json_data <- fromJSON(content)
+
+ # 위경도를 추출한다
+ if (json_data$meta$total_count > 0) {
+ lat <- json_data$documents[[1]]$y
+ lng <- json_data$documents[[1]]$x
+ return(list(lat = lat, lng = lng))
+ } else {
+ return(NULL)
+ }
+ } else {
+ stop("API request failed")
+ }
+}
+
+# 함수를 테스트한다
+address <- "서울특별시 강남구 테헤란로 212"
+result <- get_latlng(address)
+print(paste("Latitude:", result$lat, "Longitude:", result$lng))
+```
+
+### 코드수정
+
+```{r}
+#| code-line-numbers: "10"
+#| eval: false
+#| echo: true
+
+library(httr)
+library(jsonlite)
+
+# 주소를 위경도로 변환하는 함수를 정의한다
+get_latlng <- function(address) {
+ # Kakao API 키를 설정한다 (본인의 API 키로 교체해야 한다)
+ api_key <- Sys.getenv("KAKAO_MAP_API_KEY")
+
+ # API URL과 파라미터를 설정한다
+ url <- "https://dapi.kakao.com/v2/local/search/address.json"
+ params <- list(query = address)
+ headers <- add_headers("Authorization" = paste("KakaoAK", api_key))
+
+ # API를 호출한다
+ response <- GET(url, query = params, headers)
+
+ # 응답을 확인하고 JSON을 파싱한다
+ if (status_code(response) == 200) {
+ content <- content(response, "text", encoding = "UTF-8")
+ json_data <- fromJSON(content)
+
+ # 위경도를 추출한다
+ if (json_data$meta$total_count > 0) {
+ lat <- json_data$documents[[1]]$y
+ lng <- json_data$documents[[1]]$x
+ return(list(lat = lat, lng = lng))
+ } else {
+ return(NULL)
+ }
+ } else {
+ stop("API request failed")
+ }
+}
+
+# 가톨릭관동대학교 주소
+address <- "강원도 강릉시 범일로579번길 24"
+result <- get_latlng(address)
+print(paste("Latitude:", result$lat, "Longitude:", result$lng))
+```
+
+### 작업결과
+
+![](img/plugin_map.png){fig-align="center" width="700"}
+:::
+
+- [ShareGPT: API
+ 사용사례](https://chat.openai.com/share/dcfee23a-0853-454b-9d8c-f76fc4474cb6),
+ [플러그인(Plugin) - 칸바, 카카오맵,
+ 울프람](https://r2bit.com/chatGPT/plugin.html)
+
+## 사실확인 (Wolfram) {.smaller}
+
+::: panel-tabset
+### 지구는 평평해?
+
+울프람 알파(Wolfram Alpha) 사용해서 사실관계를 확인해보자.
+
+> "지구는 평평하다"라는 주장을 검증해줘.
+
+```
+"지구는 평평하다"라는 주장에 대해 Wolfram Alpha를 이용해 검증해보았습니다.
+
+### 입력 해석
+- 질문: 지구는 평평하다?
+
+### 결과
+- 답변: 아니다.
+ - 지역적으로만 그렇다. 그리고 그것도 특정 지역, 예를 들어 미국 중서부에서만 해당된다.
+
+자세한 정보는 [Wolfram|Alpha 웹사이트](https://www6b3.wolframalpha.com/input?i=Is+the+Earth+flat%3F)에서 확인할 수 있다.
+
+이처럼 Wolfram Alpha는 다양한 주장이나 정보에 대한 팩트체크를 할 수 있는 유용한 도구이다.
+```
+
+- [Wolfram\|Alpha
+ 웹사이트](https://www6b3.wolframalpha.com/input?i=Is+the+Earth+flat%3F)
+
+### 라면은 건강에 안 좋아?
+
+> 라면을 많이 먹으면 건강에 정말 안좋은가?
+
+Wolfram Alpha에서는 "라면을 많이 먹으면 건강에 정말 안 좋은가?"에 대한
+구체적인 답변을 제공하지 못했다. 그러나 일반적으로 라면은 높은 나트륨,
+지방, 인공 첨가물 등을 포함하고 있어, 과도하게 섭취할 경우 다음과 같은
+건강 문제가 발생할 수 있다:
+
+1. **고혈압**: 라면에는 나트륨이 많이 들어있다. 나트륨 과다 섭취는
+ 혈압을 높일 수 있다.
+
+2. **비만**: 라면은 칼로리가 높고, 지방도 많이 들어있다. 지속적으로
+ 라면을 많이 먹으면 체중 증가의 위험이 있다.
+
+3. **소화기 문제**: 라면은 소화가 잘 되지 않는 식품 중 하나이다. 과도한
+ 섭취는 소화기에 부담을 줄 수 있다.
+
+4. **영양 불균형**: 라면은 영양소가 적고, 나트륨이나 지방 등의 불필요한
+ 성분이 많다. 이로 인해 영양 불균형이 발생할 수 있다.
+
+5. **심혈관 질환**: 고혈압, 높은 콜레스테롤 등은 심혈관 질환의 위험을
+ 높인다.
+
+라면을 즐길 때는 이러한 점들을 고려하여 적당한 양과 빈도로 섭취하는 것이
+중요하다.
+:::
+
+## 수능문제 풀이 {.smaller}
+
+::: panel-tabset
+### 2023 수능 수학
+
+2023학년도 대학수학능력시험 수학영역 문제를 풀어보자.
+
+![](img/plugin_wolfram.jpg)
+
+### 문제 풀이
+
+> $\left(\frac{4}{2^{\sqrt{2}}}\right)^{2+\sqrt{2}}$ 값은?
+
+식 $$
+\left(\frac{4}{2^{\sqrt{2}}}\right)^{2+\sqrt{2}}
+$$ 의 값은 $4$입니다.
+
+정확한 형태로는 $2^{(2 - \sqrt{2}) (2 + \sqrt{2})}$로 표현됩니다.
+
+자세한 정보는 [Wolfram\|Alpha
+웹사이트](https://www6b3.wolframalpha.com/input?i=%284+%2F+%282%5E%28sqrt%282%29%29%29%29%5E%282+%2B+sqrt%282%29%29)에서
+확인할 수 있다.
+
+### 풀이 과정
+
+> 과정도 설명해줘.
+
+::: columns
+::: column
+물론이다. 주어진 식은 $$
+\left(\frac{4}{2^{\sqrt{2}}}\right)^{2+\sqrt{2}}
+$$이다. 이 식을 단계별로 분해해보자.
+
+- 단계 1: 분모를 간단하게 만들기 먼저, 분모인 $2^{\sqrt{2}}$를
+ 간단하게 만들기 위해 분자와 분모에 $2^{\sqrt{2}}$를 곱한다. 이렇게
+ 하면:
+
+$$
+\left(\frac{4 \times 2^{\sqrt{2}}}{2^{\sqrt{2}} \times 2^{\sqrt{2}}}\right)^{2+\sqrt{2}}
+$$
+
+- 단계 2: 분모를 합치기 이제 분모의
+ $2^{\sqrt{2}} \times 2^{\sqrt{2}}$를 합쳐 $2^{2\sqrt{2}}$로 만든다.
+
+$$
+\left(\frac{4 \times 2^{\sqrt{2}}}{2^{2\sqrt{2}}}\right)^{2+\sqrt{2}}
+$$
+:::
+
+::: column
+- 단계 3: 분자를 합치기 분자의 $4 \times 2^{\sqrt{2}}$를 합쳐
+ $2^2 \times 2^{\sqrt{2}} = 2^{2+\sqrt{2}}$로 만든다.
+
+$$
+\left(\frac{2^{2+\sqrt{2}}}{2^{2\sqrt{2}}}\right)^{2+\sqrt{2}}
+$$
+
+- 단계 4: 지수 법칙 적용 지수 법칙에 따라 분자와 분모의 지수를
+ 빼준다.
+
+$$
+\left(2^{(2+\sqrt{2}) - 2\sqrt{2}}\right)^{2+\sqrt{2}} = \left(2^{(2 - \sqrt{2})(2 + \sqrt{2})}\right)^{2+\sqrt{2}}
+$$
+
+- 단계 5: 최종 계산 마지막으로, $(2 - \sqrt{2})(2 + \sqrt{2})$를
+ 계산하면 $4 - 2 = 2$가 된다. 따라서 최종 결과는 $2^2 = 4$이다.
+
+이렇게 해서 $$
+\left(\frac{4}{2^{\sqrt{2}}}\right)^{2+\sqrt{2}} = 4
+$$임을 확인할 수 있다.
+:::
+:::
+:::
+
+::: aside
+[[ShareGPT: 팩트체크와 수학문제
+풀이](https://chat.openai.com/share/e3e57271-9956-4348-abe9-4a87bc56a984)]{.aside}
+:::
+
+## OpenAI Advanced Data Analysis {.smaller}
+
+
+
+> Open AI Code Interpreter → Advanced Data Analysis → 챗GPT4
+
+
+
+![](img/km_code_interpreter.png)
+
+::: aside
+[생성AI 광명시 데이터 분석
+사례](https://r2bit.com/map_challenge/km_BitGPT.html)
+:::
+
+## RStudio Copilot
+
+> `Tools -> Global Options -> Copilot -> Enable Github Copilot`
+
+![](img/rstudio_copilot.jpg)
+
+## 웹앱(Shiny App) 개발 사례
+
+![](img/shiny_app_ci.gif)
+
+## 광명시 보좌관
+
+![](img/km_ai.gif){fig-align="center" width="728"}
+
+- [소스코드](https://github.com/bit2r/BitStat2)
+
+## RTutor & PandasAI
+
+![](img/rtutor_pandasai.png){fig-align="center" width="450"}
+
+::: aside
+- [챗GPT 데이터 과학](https://r2bit.com/gpt-ds/)
+:::
diff --git a/slideshow/202404-sch/curriculum.qmd b/slideshow/202404-sch/curriculum.qmd
new file mode 100644
index 0000000..72181be
--- /dev/null
+++ b/slideshow/202404-sch/curriculum.qmd
@@ -0,0 +1,366 @@
+# 통계 → 데이터 사이언스 → 챗GPT 인공지능
+
+## 교육과정 {.smaller}
+
+::: panel-tabset
+### 종이와 연필
+
+![](img/cku_statistics.jpg){fig-align="center" width="413"}
+
+### 통계 보고서
+
+![](img/cku_sas_word.png){fig-align="center" width="715"}
+
+### DS 입문
+
+```{r}
+library(tidyverse)
+library(rvest)
+
+library(gt)
+library(gtExtras)
+
+ds_url <- "https://statkclee.github.io/yonsei/"
+ds_html <- read_html(ds_url)
+
+ds_html |>
+ html_elements('table') |>
+ html_table() %>%
+ .[[1]] |>
+ slice(2:n()) |>
+ separate(X2, into = c("학습내용", "날짜"), sep = "-") |>
+ separate(학습내용, into = c("주차", "학습내용"), sep = "\\.") |>
+ select(주차, 학습내용, 날짜) |>
+ drop_na() |>
+ mutate(날짜 = str_trim(날짜),
+ 학습내용 = str_trim(학습내용)) |>
+ mutate(날짜 = if_else(str_detect(날짜, "^\\d"), 날짜, NA_character_)) |>
+ gt() |>
+ gt_theme_pff() |>
+ sub_missing(
+ columns = 날짜,
+ missing_text = "-"
+ ) |>
+ cols_align("center") |>
+ opt_table_font(
+ font = list(
+ google_font(name = "Sunflower"),
+ "NanumGothic"
+ )
+ ) %>%
+ tab_style(
+ style = list(
+ "font-variant: small-caps;"
+ ),
+ locations = cells_body(columns = everything())
+ ) %>%
+ tab_header(
+ title =
+ htmltools::tagList(
+ htmltools::tags$div(
+ style = htmltools::css(
+ `text-align` = "center"
+ ),
+ htmltools::HTML(
+ web_image("img/curriculum_yonsei.png")
+ )
+ ),
+ htmltools::tags$div(
+ htmltools::tags$strong("연세대"),
+ "데이터 사이언스 입문"
+ )
+ )
+ ) |>
+ tab_options(
+ table.width = "65%",
+ heading.title.font.size = px(12)
+ )
+
+```
+
+- [연세대 "데이터 과학 입문"](https://statkclee.github.io/yonsei/)
+
+### 고급 DS
+
+```{r}
+ds2_url <- "https://statkclee.github.io/yonsei2/"
+ds2_html <- read_html(ds2_url)
+
+ds2_html |>
+ html_elements('table') |>
+ html_table() %>%
+ .[[1]] |>
+ slice(2:n()) |>
+ separate(X2, into = c("학습내용", "날짜"), sep = "∽̱") |>
+ separate(학습내용, into = c("주차", "학습내용"), sep = "\\.") |>
+ select(주차, 학습내용, 날짜) |>
+ drop_na() |>
+ mutate(날짜 = str_trim(날짜),
+ 학습내용 = str_trim(학습내용)) |>
+ mutate(날짜 = if_else(str_detect(날짜, "^\\d"), 날짜, NA_character_)) |>
+ gt() |>
+ gt_theme_pff() |>
+ sub_missing(
+ columns = 날짜,
+ missing_text = "-"
+ ) |>
+ cols_align("center") |>
+ opt_table_font(
+ font = list(
+ google_font(name = "Sunflower"),
+ "NanumGothic"
+ )
+ ) %>%
+ tab_style(
+ style = list(
+ "font-variant: small-caps;"
+ ),
+ locations = cells_body(columns = everything())
+ ) %>%
+ tab_header(
+ title =
+ htmltools::tagList(
+ htmltools::tags$div(
+ style = htmltools::css(
+ `text-align` = "center"
+ ),
+ htmltools::HTML(
+ web_image("img/curriculum_yonsei2.png")
+ )
+ ),
+ htmltools::tags$div(
+ htmltools::tags$strong("연세대"),
+ "데이터 (사이언스) 공학"
+ )
+ )
+ ) |>
+ tab_options(
+ table.width = "65%",
+ heading.title.font.size = px(12)
+ )
+```
+
+- [연세대 "데이터 (사이언스) 공학"](https://statkclee.github.io/yonsei2/)
+
+### GS 칼텍스
+
+```{r}
+#| echo: false
+library(readxl)
+library(tidyverse)
+
+citizen_courses <- read_excel(glue::glue("{here::here()}/data/curriculum_2023.xlsx"), sheet = "level_01")
+
+citizen_courses %>%
+ fill(c(일정, 과정)) %>%
+ mutate(과정 = str_remove(과정, "^\\d+\\.\\s+")) %>%
+ group_by(일정, 과정, 데이터셋) %>%
+ summarize(과정상세 = str_c(과정상세, collapse = " ")) |>
+ ungroup() |>
+ relocate(데이터셋, .after = 과정상세) |>
+ ## 표 작성
+ gt() %>%
+ gt_theme_pff() %>%
+ tab_style(
+ style = list(
+ "font-variant: small-caps;"
+ ),
+ locations = cells_body(columns = everything())
+ ) |>
+ sub_missing(columns = everything(),
+ missing_text = "-") |>
+ fmt_markdown(columns = TRUE) |>
+ tab_options(
+ table.width = "100%",
+ heading.title.font.size = px(12)
+ ) |>
+ cols_align("center") |>
+ opt_table_font(
+ font = list(
+ google_font(name = "Sunflower"),
+ "NanumGothic"
+ )
+ ) %>%
+ tab_header(
+ title =
+ htmltools::tagList(
+ htmltools::tags$div(
+ style = htmltools::css(
+ `text-align` = "center"
+ ),
+ htmltools::HTML(
+ web_image("img/curriculum_gs_caltex.png")
+ )
+ ),
+ htmltools::tags$div(
+ htmltools::tags$strong("GS 칼텍스"),
+ "시민 데이터 과학"
+ )
+ )
+ )
+
+```
+
+- [GS 칼텍스 데이터 사이언스](https://r2bit.com/curriculum/)
+
+
+### GS 칼텍스
+
+```{r}
+#| echo: false
+courses <- tribble(~"과목명", ~"학습상세", ~"일정", ~"데이터셋",
+ "환경설정", "학습 도구 설치 및 학습환경", "00주차", "파머 펭귄, BitData",
+ "디지털 글쓰기(보고서)", "마크다운 / Quarto", "01주차", "BitData",
+ "명령라인 데이터 분석", "자동화(Shell)", "02주차", "SWC",
+ "버전 제어", "버전제어/협업(Git / GitHub / GitLab)", "03주차", "",
+ "프로그래밍", "SQL", "04주차", "Data Carpentry, DVD 렌탈",
+ "프로그래밍", "시각화", "05주차", "gapminder",
+ "프로그래밍", "파이썬", "06주차", "",
+ "대쉬보드", "Flexdashboard / Shinydashboard", "07주차", "",
+ "기계학습", "tidymodels / scikit-learn", "08주차", "",
+ "데이터 과학 제품", "RESTful API", "09주차", "",
+ "특수 데이터", "시계열(Time Series)", "10주차", "KOSPI",
+ "특수 데이터", "공간정보(Geospatial) / 텍스트 분석", "11주차", "미디어오늘",
+ "비정형 데이터", "텍스트와 이미지 (딥러닝)", "12주차", "")
+
+courses %>%
+ select(일정, everything()) %>%
+ gt() %>%
+ gt_theme_pff() %>%
+ tab_options(
+ table.width = "100%",
+ heading.title.font.size = px(17)
+ ) |>
+ tab_style(
+ style = list(
+ "font-variant: small-caps;"
+ ),
+ locations = cells_body(columns = everything())
+ ) |>
+ opt_table_font(
+ font = list(
+ google_font(name = "Sunflower"),
+ "NanumGothic"
+ )
+ ) %>%
+ cols_align(
+ align = "center",
+ columns = everything()
+ ) |>
+ tab_header(
+ title =
+ htmltools::tagList(
+ htmltools::tags$div(
+ style = htmltools::css(
+ `text-align` = "center"
+ ),
+ htmltools::HTML(
+ web_image("img/curriculum_gs_caltex.png")
+ )
+ ),
+ htmltools::tags$div(
+ htmltools::tags$strong("GS 칼텍스"),
+ "데이터 과학"
+ )
+ )
+ )
+
+```
+
+- [GS 칼텍스 데이터 사이언스](https://r2bit.com/curriculum/)
+
+
+
+### 챗GPT DS {.smaller}
+
+```{r}
+library(tidyverse)
+library(readxl)
+library(gt)
+library(gtExtras)
+extrafont::loadfonts()
+
+curriculum_raw <- read_excel(glue::glue("{here::here()}/data/건국대_커리큘럼.xlsx"))
+
+curriculum <- curriculum_raw %>%
+ fill(everything(), .direction="down") %>%
+ mutate(날짜 = as.Date(날짜)) %>%
+ mutate(주차 = glue::glue("{주차} 주차"))
+
+## 첫번째
+curriculum_first <- curriculum %>%
+ filter(dplyr::row_number() <=10)
+
+curriculum_first_gt <- curriculum_first %>%
+ gt(groupname_col = c("주차", "날짜")) %>%
+ cols_align(align = "center") %>%
+ opt_table_font(
+ font = list(
+ google_font(name = "Sunflower"),
+ "NanumGothic"
+ )
+ ) %>%
+ gt_theme_pff() %>%
+ tab_style(
+ style = list(
+ "font-variant: small-caps;"
+ ),
+ locations = cells_body(columns = everything())
+ ) %>%
+ tab_header(
+ title =
+ htmltools::tagList(
+ htmltools::tags$div(
+ style = htmltools::css(
+ `text-align` = "center"
+ ),
+ htmltools::HTML(
+ web_image("img/konkuk/tools.png")
+ )
+ ),
+ htmltools::tags$div(
+ htmltools::tags$strong("챗GPT 데이터 사이언스"),
+ "건국대 전문교육과정"
+ )
+ )
+ )
+
+## 두번째
+curriculum_second <- curriculum %>%
+ filter(dplyr::row_number() > 10)
+
+curriculum_second_gt <- curriculum_second %>%
+ gt(groupname_col = c("주차", "날짜")) %>%
+ cols_align(align = "center") %>%
+ opt_table_font(
+ font = list(
+ google_font(name = "Sunflower"),
+ "NanumGothic"
+ )
+ ) %>%
+ gt_theme_pff() %>%
+ tab_style(
+ style = list(
+ "font-variant: small-caps;"
+ ),
+ locations = cells_body(columns = everything())
+ )
+
+## 결합
+
+listed_tables <- list(curriculum_first_gt, curriculum_second_gt)
+
+gt_two_column_layout(listed_tables)
+```
+
+### 평가
+
+
+
+![](img/education_evaluation.jpg)
+
+- [데이터 사이언스 MCQ](https://r2bit.com/curriculum/mcq_stat.html)
+
+:::
+
+
diff --git a/slideshow/202404-sch/dashboard.qmd b/slideshow/202404-sch/dashboard.qmd
new file mode 100644
index 0000000..a7fd25a
--- /dev/null
+++ b/slideshow/202404-sch/dashboard.qmd
@@ -0,0 +1,41 @@
+
+
+# 대쉬보드
+
+## 코로나19 대쉬보드
+
+
+
+![쿼토 코로나19 제작과정 [@kulkarni2019building]](img/dashboard_workflow.jpg)
+
+::: aside
+
+- 대시보드:
+- 소스코드:
+- 제작방법:
+
+:::
+
+## flexdashboard
+
+![](img/dashboard_flexdashboard.png){fig-align="center" width="788"}
+
+::: aside
+
+- 대시보드:
+- 소스코드:
+
+:::
+
+## 쿼토 대시보드
+
+![](img/dashboard_quarto.png){fig-align="center" width="675"}
+
+::: aside
+
+- 대시보드:
+- 소스코드: 공개준비중
+
+:::
+
+
diff --git a/slideshow/202404-sch/office-interface.qmd b/slideshow/202404-sch/office-interface.qmd
new file mode 100644
index 0000000..f497157
--- /dev/null
+++ b/slideshow/202404-sch/office-interface.qmd
@@ -0,0 +1,176 @@
+# **글쓰기** 챗GPT 인터페이스 - 오피스 전쟁
+
+## 구글 검색의 종말(?)
+
+![](img/chatGPT-search.jpg){fig-align="center" width="700"}
+
+## 글쓰기 역사
+
+
+
+![](img/writing_history.jpg)
+
+::: aside
+- [문자와 종이 역사](https://r2bit.com/quarto/writing_history.html)
+:::
+
+## 오피스 전쟁 {.smaller}
+
+| 항목 | MS 오피스 [^1] | 구글 오피스 [^2] | 리브레 오피스 [^3] | 한컴 오피스 [^4] |
+|:-------------:|:-------------:|:-------------:|:-------------:|:-------------:|
+| 문서 작성 및 편집 | 워드, 엑셀, 파워포인트 등의 데스크톱 및 웹 앱 제공 | 구글 문서, 스프레드시트, 프레젠테이션 등의 웹 앱 제공 | 라이터, 캘크, 임프레스 등의 데스크톱 앱 제공 | 한글, 한셀, 한쇼 등의 데스크톱 및 모바일 앱 제공 |
+| 협업 및 공유 | 원드라이브를 통해 문서를 클라우드에 저장하고 공유 가능. 여러 사람이 동시에 문서를 수정할 수 있으나 실시간으로 보기 어려움 | 구글 드라이브를 통해 문서를 클라우드에 저장하고 공유 가능. 여러 사람이 동시에 문서를 수정하고 실시간으로 확인 가능 | 드롭박스나 구글 드라이브와 연동하여 문서를 클라우드에 저장하고 공유 가능. 여러 사람이 동시에 문서를 수정할 수 있으나 실시간으로 보기 어려움 | 넷프리즘을 통해 문서를 클라우드에 저장하고 공유 가능. 여러 사람이 동시에 문서를 수정할 수 있으나 실시간으로 보기 어려움 |
+| 이메일 및 채팅 | Outlook을 통해 비즈니스 메일 제공. Teams을 통해 채팅 및 화상 회의 가능 | Gmail을 통해 비즈니스 메일 제공. Chat과 Meet을 통해 채팅 및 화상 회의 가능 | 이메일 및 채팅 기능 없음 | 이메일 및 채팅 기능 없음 |
+| 가격 | 1인당 월 5\~20달러 다양한 요금제 제공. 데스크톱 앱 사용 가능한 요금제는 12.5달러부터 시작 | 1인당 월 6\~18달러까지 다양한 요금제 제공 | 완전 무료 | 개인용은 무료로 사용 가능하며 업무용은 별도로 견적 요청 필요 |
+
+[^1]: https://www.microsoft.com/ko-kr/microsoft-365/business
+
+[^2]: https://workspace.google.com/intl/ko_kr/
+
+[^3]: https://www.libreoffice.org/
+
+[^4]: https://www.hancom.com/product/productMain.do
+
+## 오피스 전쟁: 패러다임 충돌
+
+![](img/writing-evolution.jpg)
+
+## 챗GPT 시대 사무실
+
+::: panel-tabset
+### 챗GPT 사용원인
+
+![](img/chatGPT_why.jpg){width="600"}
+
+### 인터페이스
+
+![](img/chatGPT_interface.jpg){width="500"}
+
+### 챗GPT AS-IS
+
+![](img/chatGPT-AS-IS.jpg)
+
+### 챗GPT TO-BE
+
+![](img/chatGPT-TO-BE.jpg)
+:::
+
+## 챗GPT가 이룬 대통합
+
+![](img/chatGPT-Text-to-X.jpg)
+
+## 인터페이스 (Interface) {.smaller}
+
+::: panel-tabset
+### 진화과정
+
+
+
+```{mermaid}
+flowchart TB
+
+ subgraph A["사용자 인터페이스"]
+ direction LR
+ CLI["CLI Command Line Interface 1950~"] --> GUI["GUI Graphic User Inferface 1970~"]
+ GUI --> WI["Web Interface 1994~"]
+ WI --> MI["Mobile Interface 2007~"]
+ MI --> NUI["LUI Language User Interface 2023~"]
+
+ end
+
+
+class A nodeStyle
+
+classDef nodeStyle fill:#fcfbfa,stroke:#000000,stroke-width:0.7px,font-weight:bold,font-size:14px;
+```
+
+### CLI
+
+
+
+![](img/ui_cli.jpg)
+
+-
+
+### GUI
+
+
+
+![](img/ui_gui.jpg)
+
+-
+
+### WUI
+
+
+
+![](img/ui_web.jpg)
+
+### MUI
+
+![](img/ui_mi.jpg)
+
+-
+
+### LUI
+
+![](img/sam_altman_LUI.jpg)
+
+-
+:::
+
+## 챗GPT NUI {.smaller}
+
+::: panel-tabset
+### 1:1 채팅
+
+- 챗GPT (ChatGPT)
+
+![](img/chatgpt_writing.gif){fig-align="center" width="634"}
+
+### 클릭하여 완료
+
+- OpenAI Playground
+
+![](img/ui_playground.jpg){fig-align="center" width="645"}
+
+### 자동완성
+
+- GitHub Copilot
+
+![](img/ui_copilot.gif){fig-align="center"}
+
+-
+
+### 명령 팔레트
+
+::: columns
+::: column
+#### 사례
+
+::: r-stack
+![](img/command-tree.gif)
+
+::: fragment
+![](img/generate_code.gif)
+:::
+
+::: fragment
+{{< video https://blog.replit.com/images/ai/aimode_future.mp4 width="500" height="400" >}}
+:::
+:::
+
+-
+-
+:::
+
+::: column
+#### Command Palette 역사
+
+- 60년대로 거슬러 올라가는 명령 팔레트는 최근 기술 업계에서 다시 인기를 얻고 있으며 사용자 중심 소프트웨어의 필수적인 부분으로 간주됨.
+- CLI는 개인용 컴퓨터가 대중화되기 전 초기 컴퓨팅을 지배했으며 사용자가 시스템을 작동하기 위해 특정 명령을 알아야 했다. 1984년 Apple의 매킨토시와 함께 도입된 그래픽 사용자 인터페이스(GUI)는 중요한 혁신으로 여겨졌지만, 소프트웨어의 복잡성이 증가함에 따라 GUI만으로는 탐색하기가 점점 더 어려워졌다.
+- 사용자가 항목 이름의 짧은 약어입력하여 앱과 파일을 검색할 수 있는 런처가 점점 더 보편화 되었다. 예를 들어 2001년에 출시된 Mac OS X용 LaunchBar, Quicksilver, 2005년에 출시된 Apple의 시스템 전체 Spotlight가 있다. 검색과 CLI의 결합은 **Command Palette**의 탄생으로 이어졌다.
+- 오늘날 우리가 알고 있는 현대식 명령 팔레트는 2011년 Sublime Text 2 베타 Joe Skinner가 처음 소개. 명령줄 사용에 익숙한 프로그래머들이 단축키를 모두 외울 필요 없이 더 빠르게 작업할 수 있어 중요한 발전이 됨.
+:::
+:::
+:::
diff --git a/slideshow/202404-sch/quarto-digital-writing.qmd b/slideshow/202404-sch/quarto-digital-writing.qmd
new file mode 100644
index 0000000..8fe914d
--- /dev/null
+++ b/slideshow/202404-sch/quarto-digital-writing.qmd
@@ -0,0 +1,216 @@
+# 도구(문서)의 인간 디지털 저작
+
+
+
+![](img/homo-faber.jpg)
+
+## 데이터 과학 과거와 현재 {.smaller}
+
+
+:::
+
+## 서울 R 미트업 (2023년) {.smaller}
+
+::: columns
+::: column
+::: r-stack
+
+![](img/seoul-r-meetup-september.jpg){.fragment width="320"}
+
+::: fragment
+![](img/seoul-r-meetup-august.jpg){.fragment width="320"}
+:::
+
+
+::: fragment
+![](img/seoul-r-meetup-july.jpg){.fragment width="320"}
+:::
+
+::: fragment
+![](img/seoulr-r-meetup-june.jpg){.fragment width="320"}
+:::
+
+::: fragment
+![](img/seoul-r-meetup-202305.jpg){.fragment width="320"}
+:::
+
+::: fragment
+![](img/seoul-r-meetup-AsiaR.jpg){.fragment width="320"}
+:::
+
+::: fragment
+![](img/seoul-r-meetup-202304.jpg){.fragment width="320"}
+:::
+
+
+:::
+:::
+
+::: column
+## 참여와 연대
+
+- **서울R미트업 meetup.com**: [link](https://www.meetup.com/seoul-r-meetup)
+ - **23년 4월 서울 R 미트업**: [link](https://www.meetup.com/seoul-r-meetup/events/292232899/)
+ - **23년 5월 서울 R 미트업**: [link](https://www.meetup.com/seoul-r-meetup/events/292966674/)
+ - **23년 6월 서울 R 미트업**: [link](https://www.meetup.com/seoul-r-meetup/events/293485362/)
+ - **23년 7월 서울 R 미트업**: [link](https://www.meetup.com/seoul-r-meetup/events/293929603/)
+ - **23년 8월 서울 R 미트업**: [link](https://www.meetup.com/seoul-r-meetup/events/294651161/)
+ - **23년 9월 서울 R 미트업**: [link](https://www.meetup.com/seoul-r-meetup/events/295338359/)
+- 세계 R 미트업 현황 (Global R Meetup Dashboard): [link](https://r-community.org/usergroups/)
+- 한국 R 사용자회 (Korea R User Group): [link](https://r2bit.com/)
+- 한국 R 컨퍼런스 (Korea R Conference): [link](https://use-r.kr/)
+- 유튜브 채널 (Youtube Channel): [link](https://www.youtube.com/channel/UCW-epmIvjBEhhVXw_F0Nqbw)
+- 페이스북 그룹 (Facebook Group): [link](https://www.facebook.com/groups/tidyverse)
+:::
+:::
+
+
+
+# {background-image="img/meetup_logo.jpg"}
+
+::: r-fit-text
+
+2024년 인공지능 데이터 사이언스
+
+:::
+
+## 서울 R 미트업 {.smaller}
+
+::: columns
+::: column
+::: r-stack
+
+![](img/meetup/20240430_poster.png){.fragment width="320"}
+
+::: fragment
+![](img/meetup/20240430_poster.png){.fragment width="320"}
+:::
+
+
+
+:::
+:::
+
+::: column
+## 참여와 연대
+
+- **서울R미트업 meetup.com**: [link](https://www.meetup.com/seoul-r-meetup)
+ - **23년 4월 서울 R 미트업**: [link](https://www.meetup.com/seoul-r-meetup/events/300281000/)
+ - **23년 5월 서울 R 미트업**: [link]()
+ - **23년 6월 서울 R 미트업**: [link]()
+ - **23년 7월 서울 R 미트업**: [link]()
+ - **23년 8월 서울 R 미트업**: [link]()
+ - **23년 9월 서울 R 미트업**: [link]()
+- Resources for General Help with R - Regional R communities [link](https://contributor.r-project.org/r-help)
+- 세계 R 미트업 현황 (Global R Meetup Dashboard): [link](https://r-community.org/usergroups/)
+- 한국 R 사용자회 (Korea R User Group): [link](https://r2bit.com/)
+- 한국 R 컨퍼런스 (Korea R Conference): [link](https://use-r.kr/)
+- 유튜브 채널 (Youtube Channel): [link](https://www.youtube.com/channel/UCW-epmIvjBEhhVXw_F0Nqbw)
+- 페이스북 그룹 (Facebook Group): [link](https://www.facebook.com/groups/tidyverse)
+:::
+:::
+