데이터 과학 입문

데이터 과학(Data Science)이라는 말이 회자된지는 몇년이 되지 않았지만, 인공지능(AI)과 함께 현재 가장 많이 회자되고 있는 단어가 되었다. 이 교과목을 통해서 재현가능한 과학연구(Reproducible Scientific Research)를 위한 과학컴퓨팅(Scientific Computing) 기본기를 대표적인 프로그래밍 언어 R을 기본으로 하여 필요한 경우 파이썬, SQL, 자바스크립트, 정규표현식 등 다양한 언어를 필요한 경우 활용하여 기계로 하여금 문제를 풀도록 하는 방법을 습득하고, 더 나아가 애자일(Agile) 소프트웨어 개발 프로세스를 차용하여 3~4명이 팀을 이뤄 실제 데이터 과학 제품 및 서비스 개발 프로젝트를 추진하여 데이터 과학 입문 과정을 마치게 되면 4차 산업혁명의 원재료인 데이터를 가지고 사회경제적 가치가 있는 제품과 서비스를 개발할 수 있는 기본 역량을 함양하게 된다.

인터랙티브 강의노트

해커톤 안내

데이터 사이언스 입문 프로젝트

선수과목

이번 수업에 특별한 선수과목이 필요하지는 않고, 차근차근 배워간다는 열정과 열린 마음이 중요합니다. 다만, 수업량이 경우에 따라서 많을 수 있으니 초등학생이 많이 배우는 컴퓨터 과학 언플러그드, 중고생들에게 관심이 많은 파이썬 계열의 리보그 - 프로그래밍과 문제해결, 파이썬 거북이, 정보과학을 위한 파이썬을 수업 전 읽어두면 도움이 많이 될 것이다. 또한, 소프트웨어 카펜트리 5.3 및 최근 있었던 소프트웨어 카펜트리 한림대학교 워크샵 교재를 숙독하면 도움이 많이 될 수 있다.

Schedule

Setup Download files required for the lesson
00:00 1. 데이터 과학 (Data Science) - 3월7일 데이터 과학이란 무언인가?
왜 엑셀 해방운동을 펼치는가?
왜 GUI는 데이터 과학의 미래가 될 수 없는가?
03:00 2. 프로그래밍 기초와 마크다운 보고서 - 3월14일 초중등 교육과정에서 코딩을 경험해 보신 분?
소프트웨어와 보고서를 어떻게 통합할 수 있을까?
프로그래밍과 글쓰기의 같은 점과 다른 점은 무엇일까요?
06:00 3. 데이터와 커뮤니티 찾기, 도움 청하기, 프로젝트 설정 - 3월21일 도대체 커뮤니티와 데이터는 어디있나요?
R에 대해서 도움을 어떻게 받을 수 있을까요?
R로 프로젝트 관리를 어떻게 할까?
09:00 4. 데이터 수집 - 웹크롤링 [특강-나성호] - 3월28일 웹에서 데이터를 어떻게 가져오는가?
12:00 5. 자료구조(Data Structures) - 4월4일 R에 데이터를 어떻게 불러올 수 있을까?
R에서 기본 자료구조는 무엇인가?
R에서 범주형 정보를 어떻게 표현하는가?
15:00 6. 데이터프레임과 SQL - 4월11일 데이터베이스 언어 SQL을 들어보셨나요?
데이터프레임을 어떻게 조작할 수 있을까?
18:00 7. 버전제어, 협업, 그리고 저작권과 라이선스 - 4월18일 버젼 제어가 무엇이고, 왜 버젼제어를 사용해야 하는가?
데이터 과학자가 알아야 하는 법규준수는 무엇인가?
버전 제어를 사용해서 어떻게 다른 분들과 협업할 수 있을까요?
버전 제어가 나의 작업을 어떻게 더 공개될 수 있도록 도울까?
21:00 8. 중간고사 - 4월25일 데이터 과학 에너지 절반 충전되었어요!!!
24:00 9. 시각화 (Visualization) - 5월2일 R로 논문 품질 그래프를 어떻게 생성할까요?
정적 그래프외 어떤 것이 있을까요?
최소 노력으로 애니메이션까지 만드는 방법은 무엇일까요?
27:00 10. 정규표현식 - 5월9일 데이터 과학과 관련된 프로그램을 성공적으로 생성하고 사용하는데 필요한 일반적인 기술과 좋은 관례는 어떤 것이 있을까요?
본인 데이터 과학 작업에 정규 표현식을 사용한다는 사실이 상상이 가는가?
30:00 11. 데이터 과학 프로그래밍 - 5월16일 CLI와 GUI 데이터 과학은 어떻게 다른가
R로 데이터 의존적인 선택을 강제하는 방법은 무엇인가?
R로 어떻게 하면 연산작업을 반복할 수 있을까?
재귀(recusion)란 무엇일까?
33:00 12. 데이터 과학 제품 - `shiny` [특강-문건웅] - 5월23일 웹앱 제품은 어떻게 개발하는가?
36:00 13. 함수형 프로그래밍 - 5월30일 함수 작성을 넘어 좋은 함수란 무엇일까?
함수형 프로그래밍(Functional Programming)이 왜 데이터 과학에 적합할까?
무명함수를 들어본 적이 있는가?
39:00 14. 데이터 과학 저작 - 6월6일(현충일) 글쓰기 저작 환경에 만족하십니까?
데이터로 저작(authoring)하는 방법이 무엇인가요?
저자와 기계가 저작하는 업무영역을 어떻게 나눌까요?
42:00 15. R 팩키지 - 6월13일 R 팩키지를 왜 만들까?
함수와 문서를 함께 재사용하는 방법은 무엇인가?
(엑셀) 데이터를 R 팩키지로 만들면 뭐가 좋을까요?
45:00 16. 기말고사 - 6월20일
48:00 Finish

The actual schedule may vary slightly depending on the topics and exercises chosen by the instructor.