본문 바로가기

[R프로그래밍] 데이터시각화 with ggplot2:: geom_histogram, 히스토그램 in R 이리저리 논문작업에 치어살다보니... 포스팅 할 시간은 점점 줄어드네요. 최근엔 manuscript 작성에 신경을 쓰다보니 사실 R graphics 쪽은 거의 손을 놓고 있었습니다. 덕분에 간단하게 하던 작업들도 기억이 안나서 reference 들을 찾아보게 되네요. 그래서 오늘 포스팅 내용은 아주 간단하지만 데이터 분포를 확인하는데 아주 유용한, 히스토그램, histogram 을 ggplot2 를 이용하여 작성하는 방법을 알아보겠습니다. ggplot2(dataframe, aes(x= ooo ))+ geom_histogram() 위의 coding 이 가장 기본적인 coding 입니다. ggplot2 에서 dataframe 을 지정하여 주고, aes 를 이용하여 x 축을 원하는 변수로 mapping 시켜 ..
[통계] 회귀 (regression) 분석에서 비편향 (불편, unbiased) 의 의미와 증명 바쁘다는 핑계로 너무 오랜만의 포스팅이 되었네요. 이번 포스팅의 주제는 바로 회귀분석의 가장 기초적인 부분이라고 할 수 있는 내용입니다. 바로 비편향 혹은 불편. 영어로는 unbiased 라고 하죠. 여기서 비편향 혹은 불편, unbiased 가 의미하는 것이 무엇일까요? 의학 통계를 하시는 분들은 아마 이 말 자체를 처음 들어본 분들도 많이 있으실 겁니다. 이 말을 처음 들어보았다면, 반성의 시간을 갖도록 합시다. ^^; 일단 증명은 추후에 하도록 하고, unbiased 의 의미부터 살펴보기 위해 수식으로 살펴보면 $ E(\hat{\beta}_{1}) = \beta_{1} $ 를 나타냅니다. 즉, 표본에서 구한 $ \hat{\beta}_{1} $ 이라는 추정량은 우리가 구하고자 하는 모수들의 $ \be..
[R마크다운] knitr::chunk, figure size (그림 크기) 조절 옵션 오늘 포스팅 내용은 R마크다운 (markdown) 에서 figure 의 크기를 조절하는 방법입니다. 일단 마크다운 문법의 공통점이긴 한데... chunk 단위에서 figure size 에 대한 제약을 걸어줄 수도 있고, 아니면 global option 에서 figure size 에 대한 제약을 걸 수가 있습니다. 저는 개인적으로는 chunk option 으로 제약을 거는 것이 더 편하던데... 이건 상황에 따라 다르니 상황에 맞춰서 사용하시면 되겠습니다. 우선 global option 입니다. --- output: html_document: fig.height: fig.width: --- ...다음 html 에디터가 뭔가 불편하게 바꼈네요... 맘에 안드는 모양으로... R markdown (마크다운) ..
[R마크다운] knitr::chunk 경고 메시지 없애기 (warning, message) 오랜만에 포스팅을 하게 되었네요. 오늘 포스팅할 내용은 바로 R markdown (마크다운) 에서 자주 쓰이는 options 인 chunk option 과 관련된 내용입니다. 위의 그림에서 볼 수 있듯이 markdown 을 output 으로 출력을 했을때, 볼 수 있는 경고 메시지 (warning message) 들입니다. 이러한 warning message 들을 출력하지 않는 option 에 대하여 포스팅하겠습니다. chunk option 을 조절해주면 쉽게 고칠 수가 있습니다. ```{r warning = FALSE, message = FALSE} 위의 코드 처럼 warning 과 message 를 모두 false 를 할당하면 됩니다. warning = FALSE 는 warning 관련된 내용만 출력..
[R프로그래밍] 데이터전처리 stringr:: 문자, 텍스트, str_split, 변수 이름 나누기, R의 가장큰 장점이라면, 자연어 처리가 가능하다는 것이겠죠? 바로 예시로 들어가보겠습니다. #1단계 - 예시 데이터 프레임 만들기 names
[R프로그래밍] 회귀분석, 결정계수 (adjusted R2, R square)구하기 R 에서 회귀분석을 시행하여 결과값을 확인할 때, 결정계수를 함께 구해줘야합니다. 여러가지 패키지를 이용해서 구할 수도 있겠지만. summary 에 포함되어 있는 결정계수를 구하는 방법에 대하여 간단히 포스팅하도록 하겠습니다. 코드는 다음과 같습니다.# R2 값 구하기 summary(lmmodel)$r.squared # adjusted R2 값 구하기 summary(lmmodel)$adj.r.squared 정말 간단하죠? ^^ 도움이 되셨길 바랍니다. 도움이 되셨다면, '공감' 버튼 부탁드립니다^^
[R프로그래밍] 데이터시각화 with ggplot2:: 범례 (legend) 제거하기 (remove) ggplot 으로 figure 를 그렸을 때, 범례 (legend) 를 제거하고 싶을 때가 있습니다. 그럴때 사용하는 방법에 대하여 포스팅하겠습니다. iris 데이터 기준으로 말씀드리겠습니다. iris 데이터에서 Species 에 따른 Sepal.Length 와 Petal.Length 의 분포를 보고 싶어서 아래와 같은 figure 를 그렸습니다. ggplot(iris, aes(Sepal.Length, Petal.Length, color=Species))+ geom_point()+ theme_bw() 위 그림의 우측에 나와있는 범례를 지우기 위해서는 어떻게 해야할까요?? 방법은 다음과 같습니다.ggplot(iris, aes(Sepal.Length, Petal.Length, color=Species))+ ..
[R프로그래밍] 4분위 그룹 만들기, quartile grouping 어떠한 변수를 4분위수를 이용하여 4개의그룹으로 만들고 싶을 때가 있습니다.(4개의 그룹의 n 수가 동일하게...) 이때 사용하면 좋은 함수로 데이터 전처리 과정에서 자주 쓰입니다. 방법은 아래와 같습니다.dplyr 패키지에 포함되어 있는 ntile 함수를 사용하게 됩니다. dplyr::ntile ntile(df, n) mutate 와 함께 쓰면, 쉽게 quartile column 을 추가할 수 있습니다. 다음은 예시입니다.df 라는 데이터프레임에 x 라는 변수를 4분위수를 이용하여 grouping 하고 싶을 때, df% mutate(quartile = ntile(df$x, 4)) 위의 코드를 사용하시면 df 라는 데이터프레임에 quartile 이라는 이름의 column (4개로 grouping 된 변수..