본문 바로가기

R_statistics/Rs_graphics

[R프로그래밍] 데이터시각화 with ggplot2:: 그룹별로 데이터 분포 및 평균과 범위 나타내기, data distribution and errorbar with average by groups 데이터 시각화는 중요한 내용입니다.오늘의 포스팅 내용은 복잡한 데이터 프레임에서 그룹별로 각각의 변수에 대한 평균과 범위를 구하고 싶을 때 사용하는 방법입니다. 결과물은 다음과 같습니다. 전체 데이터의 분포와 함께 그룹별 상이한 데이터 분포가 한눈에 들어오죠?그리고 가운데 error-bar 와 interquartile range 로 데이터 분포 범위를 추가로 표기해두었습니다.물론 이 부분은 boxplot 으로도 대체가 가능하지만 저는 개인적으로 이런 형식이 더 보기가 좋더라구요. 그럼 위의 그래프를 그리기 위한 코드를 알아볼까요?즉, 목표는 Species 별로 Sepal Length & Width, Petal Length & Width의 분포와 평균을 구하는 것입니다. library(dplyr) libr..
[R프로그래밍] 데이터시각화 with ggplot2:: 로지스틱회귀분석의 Restricted Cubic Spline Curve (큐빅 스플라인 커브) 그리기 Restricted Cubic Spline curve odds ratio 나 hazard ratio 를 3차 곡선으로 표현할 수 있는 방법입니다. spline regression 등에 대한 설명은 그냥 넘어가겠습니다. * 추가로 로지스틱 회귀분석에 대하여 궁금하시다면, https://bpapa.tistory.com/29 이 포스팅을 참고하여주세요. DATA 는 MASS 패키지에 포함되어있는 Pima.te 데이터셋을 사용하겠습니다. BMI 에 따른 당뇨의 Odds ratio (OR) 를 구하여 plot 으로 나타나겠습니다. 오늘 최종적으로 그릴 plot 은 아래와 같습니다. bmi 30 을 기준 (reference) 로 하여, BMI 의 변화에 따른 OR 의 변화를 보여주는 것입니다. 위의 최종 그래프를 ..
[R프로그래밍] 데이터시각화 with ggplot2::geom_signif, t-test 의 p-value 를 boxplot 그래프 위에 표시하기 오늘 포스팅 내용은 boxplot 에 p-value 와 bar 를 그려서 각각의 그룹에서 평균값들이 통계적 유의성을 보여주는 방법입니다. 의학통계뿐 아니라 많은 통계 분석에서 사용하는 방법이죠. data 는 iris 데이터를 사용해보겠습니다. Species 에 따른 Sepal Length 의 평균차이를 boxplot 으로 보여주고, 거기에 bar 와 p-value 를 add 한 모습이 되겠습니다. 바로 아래 그림처럼 말이죠. 위의 figure 를 그릴 수 있는 코드를 살펴볼까요? library('ggplot2') library('ggsignif') ggplot(iris, aes(Species, Sepal.Length))+ geom_boxplot()+ geom_signif(comparisons = list..
[R프로그래밍] 데이터시각화 with ggplot2::facet, 각각의 facet 에 annotation, text 넣기 늘 포스팅 주제는 바로 R graphics 의 꽃. ggplot2 와 관련된 내용입니다. 그 중에서도 ggplot 에서 자주 쓰는 기능 중의 하나인 facet_grid 혹은 facet_wrap 을 사용하였을 때, 각각의 facet 에 annotation 혹은 text 를 넣는 방법을 알아보겠습니다. sample data 는 iris 를 사용할 예정이며, iris 의 data 의 Sepal.Length 와 Petal.Length 의 correlation 를 Species 로 구분하여 plotting 해보겠습니다. 일단 코드부터 살펴보겠습니다. library(ggplot2) r1