공부 리스트
·
Data Science
좀 오래걸렸지만 R4DS 복습을 끝내고 최근에 공부하면서 복습 겸 포스팅 준비하고 있습니다.. 1. [DS] Tidymodels https://www.tmwr.org/ Tidy Modeling with R The tidymodels framework is a collection of R packages for modeling and machine learning using tidyverse principles. This book provides a thorough introduction to how to use tidymodels, and an outline of good methodology and statistical practice for phases www.tmwr.org 2. [Modeling]..
[Data Science With R] 16. 리스트열(List-column)을 이용한 모델
·
Data Science/Manipulation
안녕하세요. R을 활용한 데이터 사이언스를 포스팅한지 벌써 6개월 정도 되었네요. "R을 활용한 데이터과학(R4DS)" 책은 3년전부터 공부한 책이였지만 중간중간 어려서워서 나중에 다시 돌아와서 보기도 했었고, 5번정도 복습을 했지만 다시 볼때마다 유용한 내용이 많이 있었습니다. 특히 다양한 경험과 배움속에서 R 프로그래밍 역량을 좀 더 높여준 책이라서 저자와 번역가님에게 정말 감사드립니다. 하여튼 해당 책을 위주로 요약해서 포스팅하는 것은 이번이 마지막이지만, 요약 하지 않은 파트도 정말 도움이 많이되어 R을 사용한 데이터 사이언스에 관심있으신 분들은 한번쯤 구매해서 읽어보시면 많은 도움을 받을 수 있지 않을까 싶습니다. Data Science With R의 마지막 포스팅은 리스트-열입니다. 데이터프레..
[R] Scatterplot Matrix (산점도행렬)
·
Data Science/Visualization
안녕하세요! 이번 포스팅에서는 산점도행렬에 대해 다루어 보려고 합니다. 많은 데이터 사이언티스트들이 본격적인 데이터 분석에 앞서 EDA를 하고 있습니다. EDA에서는 스키마 점검, 이상치 제거, 변동과 공변동 인사이트 도출을 포함해서 데이터를 이해하기 위해서 여러가지 도구들을 사용합니다. 이때, 시각화 역시 EDA에서 빠질 수 없는데요! 일반적으로 분석 할 데이터에는 많은 변수들이 포함되어 있고, 이를 한번에 표현하면 한 눈에 대략적인 관계를 파악할 수 있을 정도로 효과적이라서 많이 사용합니다. 처음으로 산점도행렬을 표현하기 위해서 데이터셋이 필요한데요. 저는 mtcars 데이터 셋을 사용해서 코드를 작성하였습니다. mtcars 11개의 변수와 32개의 데이터가 있는 mtcars 데이터셋입니다. 간단하게..
[R] all_of와 any_of를 사용한 변수 선택 (조건을 이용한 선택 추가)
·
Data Science/Manipulation
데이터 분석을 공부하고 있다면 어느정도 겪어봤을 문제인 변수 선택에 대한 내용입니다. 주로 상관계수를 구하기 위해서 데이터가 모두 수치형이여야 하는데 데이터 중 일부가 다른 유형이라서 에러가 뜨는 경우가 있을 겁니다. 또한, 작은 데이터 셋 같은 경우에는 일일이 지정해서 변수선택을 할 수 있겠지만 변수의 수가 20개, 30개가 넘어가면 골치아픕니다. 이럴 때 복잡하게 코딩하지 않고 간단하게 원하는 데이터만 추출할 수 있습니다. 아래 코드와 같이 iris 데이터의 상관계수를 구하려고하면 에러가 발생합니다. "cor(iris)에서 다음과 같은 에러가 발생했습니다:'x'는 반드시 수치형이어야 합니다" cor(iris) # Error! 그 이유는 iris의 Species열이 수치형 자료가 아닌 문자형 자료가 입..
[Data Science With R] 15. Modelr을 활용한 모델 생성
·
Data Science/Manipulation
1. 개념 목표 : 모델을 이용해 데이터를 잔차와 패턴으로 분리 시작 : 데이터 시각화 후 변수들 표현할 수 있는 모델 형태를 정의(선형, 비선형) 선형모델 모델링 : y = ax + b 시각화 : [함수] geom_abline( ) + [인자] intercept, slope 과정 : 모델 정의 > 잔차(실제값-예측값) 계산 > 잔차요약(MSE, MAE 등등) > 모델 선택 참고 glm함수, loess함수 등을 사용하여 (비)선형 모델을 생성 optim함수를 사용해 수치 최적화를 시도할 수 있다. 2. 예측값과 잔차를 구하는데 유용한 함수 modelr::expand_grid( ) : 중복을 포함한 각 변수의 모든 경우의 수의 조합을 생성 modelr::data_grid( ) : 각 변수에서 고유한 값들의..
[Data Science With R] 14. 반복수행 with purrr
·
Data Science/Manipulation
1. 명령형 프로그래밍 for 루프 : 출력 + 시퀀스 + 본문 출력 : vector(type, length)로 길이가 주어진 긴 벡터 생성 시퀀스 : 자료가 데이터 프레임인 경우 1:legnth(data)보다 seq_along(data)가 안전 while 루프 for문과 다르게 시퀀스의 길이가 명확하지 않을 때 유용하다. 출력 길이를 모르는 경우 : 결과를 리스트에 저장후 unlist 혹은 purrr::flatten_* 함수를 사용 긴 문자열이 출력되는 경우 : 문자형 벡터에 저장후 paste 혹은 str_c 함수를 사용해 단일 문자열로 결합 큰 데이터 프레임을 생성하는 경우 : 결과를 리스트에 저장후 bind_rows 및 bind_cols 함수를 사용 2. 함수형 프로그래밍 map(data, fun,..
[Data Science With R] 13. 함수형(Functional) with Base and purrr
·
Data Science/Manipulation
함수형은 개념이 조금 낯설게 다가올 수 있습니다. for문을 배운상태에서 함수형 강의를 들으면서 이게 뭐지 싶었던 기억이 있네요. 이번 포스팅에서는 함수형을 자세하게 다루지않고 요약 및 base 패키지와 purrr 패키지의 비교로 마무리하므로 자세한 설명이 필요하신 분은 다른 서적이나 블로그에서 참고하시고 요약 필요할때 참고하시면 좋겠습니다! 함수형과 함께 함수리스트, 함수공장에 대한 개념에 대해 간단하게 살펴보면 다음과 같습니다. 1. 함수형(Functional) : 함수를 파라미터로 사용하는 함수 2. 함수리스트(Function List) : 리스트의 원소가 함수들로 이루어진 객체 3. 함수공장(Function Factory) : 새로운 함수를 출력하는 함수 함수를 파라미터로 사용하는 함수인 함수형의..
[Data Science With R] 12. 함수(Function)
·
Data Science/Manipulation
0. 개요 이번 포스팅에서는 함수(Function)에 대해 간단하게 작성하려고 합니다. 우선 5년 넘게 R을 사용하면서 여러 프로젝트 / 논문 / 분석을 진행해보면서 느끼는건데 파이썬보다 R에서 함수를 직접 작성할 일은 많이 없더라고요. 그래도 함수에 대해 아는 것은 중요하다고 생각이 듭니다. 우선 함수 작성을 하는 몇 가지 이점이 존재하는데 책에서는 다음과 같이 소개합니다. 1. 연상시키는 이름을 부여해 코드를 쉽게 이해할 수 있다. 2. 요구사항이 변경되면 함수 내부의 코드만 수정하면 된다. 3. 복사 + 붙여넣기 할 때보다 에러 발생할 가능성이 낮아진다. 즉, 함수는 반복할 일이 있거나(또는 미래에라도) 동작하는 프로그램의 일정 부분을 모듈화하여 각 기능의 unit test를 점검할 때 유용합니다...