R Language

그래픽 예제 뜯어보기

 

 

 

 

지난 포스팅을 나열해 드리겠습니다.

[IT/R] - R언어 | Part_1 R 다운로드 및 맛보기

[IT/R] - R언어 | Part_2 차근차근 그래픽 예제 뜯어보기 1

[IT/R] - R언어 | Part_3 차근차근 그래픽 예제 뜯어보기 2

[IT/R] - R언어 | Part_4 차근차근 그래픽 예제 뜯어보기 3

 

 

 

 

 

 

 

인공지능

 

빅데이터

 

머신러닝

 

딥러닝

 

4차 산업혁명

 

 

 

꼬리표를 또 달고

 

R언어 포스팅을 시작하겠습니다.



 

 

 

 

 

 

 

 

이번에는 polygon을 사용하여

 

그래프를 그려 보겠습니다.



 

 

 

 

 

 

 

polygon은 다각형, 각진 도형을 의미합니다.

 

 

 

 

 

 

 

폴리곤

 

어디서 많이 들어봤는데요

 

 

 

 

 

 

 

 

폴리곤이라 불리는 이 친구도

 

입체 다각형들의 집합입니다.

 

 

 

 

 

다각형 모양의 그래프는

 

들의 연결으로 선이 생기는데

 

다른 두 종류의 선 사이를 칠하면

 

다각형의 모양이 나오게 됩니다.

 

 

 

 

 

 

이번에도 demo함수를 사용하여 

 

진행하겠습니다.

 

 

 

 

 

 

 

 

 

아래는 전체 소스코드 입니다.

 

 

par(bg="white") n <- 100 x <- c(0,cumsum(rnorm(n))) y <- c(0,cumsum(rnorm(n))) xx <- c(0:n, n:0) yy <- c(x, rev(y)) plot(xx, yy, type="n", xlab="Time", ylab="Distance") polygon(xx, yy, col="gray") title("Distance Between Brownian Motions")

 

이번에도 한줄씩 한줄씩

 

실행을 해 보시고

 

어떤 순서로 어떻게 생성되는지 

 

알아보시기 바랍니다.

 

 

 

 

 

 

 

 

 

 

par(bg="white")

 

 

먼저 배경색을 흰색으로 만들어 줍니다.

 

 

 

 

 

 

 

n <- 100

 

 

n에 100을 저장해 주고,

 

 

 

 

 

 

 

x <- c(0,cumsum(rnorm(n)))

 

n(100)개의 정규분포 난수를 생성하여 (참조 :[IT/R] - R언어 | Part_2 차근차근 그래픽 예제 뜯어보기 1)

누적합을 x에 넣어줍니다.

 

 

 

 

 

 

cumsum은 누적합을 구하는 함수입니다.

 

0이 들어가는 이유는

 

첫번째 인자부터 

 

더해진 값이 들어가기 때문에 넣습니다.

 

 

 

 

 

 

예를들어

 

아래 그림과 같이 qq에 1 2 3 4 5 를 넣고

 

cumsum (누적합)을 해 주시면

 

1 3 6 10 15의 값이 나온걸 확인하실 수 있습니다.

 

따라서 앞에 0을 넣어 0 1 3 6 10 15 순서로

 

배열을 넣어주었다 생각하시면 됩니다.

 

 

 

 

 

 

 

 

 

 

 

 

 

y <- c(0,cumsum(rnorm(n)))

 

이전과 똑같이 정규분포 난수의 누적합을 y에 넣어줍니다.

 

 

 

 

 

 

 

 

xx <- c(0:n, n:0)

 

xx에 0부터 n까지(100), 

 

그리고 n(100)부터 0까지의 배열을 

 

넣어줍니다.

 

 

 

 

 

 

 

 

 

 

 

yy <- c(x, rev(y))

 

y값 배열의 역순을 yy에 저장해 줍니다.

 

rev는 reverse의 약자라고 보시면 됩니다.

 

아래와 같이 배열의 순서가 역순으로 됩니다.

 

 

 

 

 

 

 

 

plot(xx, yy, type="n", xlab="Time", ylab="Distance")

 

x,y축으로 이루어진 그래프를 만듭니다.

type="n"이므로 좌표를 찍지 않고 (참고 :[IT/R] - R언어 | Part_2 차근차근 그래픽 예제 뜯어보기 1)

 

x축과 y축의 제목을 넣어줍니다.

 

 

 

 

 

 

 

polygon(xx, yy, col="gray")

 

xx와 yy값의 좌표를 가지고 polygon. 즉 다각형의 그래프를 그립니다.

 

col처럼 여기도 다양한 옵션을 넣을 수 있습니다.

 

 

 

x, y -> 좌표

 

col -> 색상

 

lty -> 선 종류

 

lwd -> 선 굵기

 

density -> 선의 밀도

 

angle -> 선의 기울기

 

 

 

 

 

 

 

title("Distance Between Brownian Motions")

 

 

제목을 넣어줌으로 그래프를 완성합니다.

 

 

 

 

 

 

 

 

 

 

곧이어 다음 포스팅에서는 

 

가로 막대 그래프를 해보겠습니다.

 

 

 

 

 

 

 

감사합니다.



통계 및 자료분석을 위한

R Language

 

 

 

 

 

 

 

인공지능

 

딥러닝

 

머신러닝

 

.

.

.

 

 

 

4차 산업 혁명이라는 키워드와 같이

 

최근 몇년간 큰 이슈가 되고 있는

 

전공자가 아니더라도

 

한번쯤은 들어봤거나

 

알 것 같은 느낌의 (?) 단어들 입니다.

 

물론 저 기술들의 가운데엔 빅데이터가 있습니다.

 

 

 

 

 

 

 

 

 

 

이 무수한 양의 데이터들을 

 

파악하고 분석하고 

 

이를 토대로 의사 결정에 도움을 주는

 

정보를 찾아냅니다.

 

정보를 원하는 사람들에게 더 정확한 정보를 제공해 주기 위해

 

자료를 정확하게 분석하는 능력이 필요합니다.

 

 

 

 

 

 

 

 

 

이젠 자료를 단지 "저장"하는것에 한하지 않고

 

그 속에 있는 정보들의 유용한 상관관계를 파악해야합니다.

 

자료를 수집하고, 시각화하여 

 

이를 토대로 탐색하여 

 

통계기계학습 등의 방법을 적용해

 

원하는, 혹은 생각지도 못한 유용한 정보들을 추출해 냅니다.

 

 

 

 

 

 

 

 

 

그리고 이 자료들을 분석하는데 있어 

 

효과적인 툴인 R을 사용해서 진행해보려 합니다.

 

오픈소스이기 때문에 무료로 사용이 가능하고

 

수많은 통계 라이브러리들이 있어 

 

손쉽고 간단하게 접근 및 사용이 가능합니다.

 

그리고 Interactive Mode 이기 떄문에

 

명령어를 입력하면 실행 결과를 바로바로 확인할 수 있습니다.

 

 

 

 

 

 

 

 

 

지금부터 설치 및 실행을 해 보도록 하겠습니다.

 

 

 

 

 

 

 

 

1. R 설치

우선 

 

https://cran.seoul.go.kr/

 

위 사이트에 접속을 하여 

 

 

 

자신의 OS에 맞게 선택하고

 

 

 

 

 

 

 

 

 

 

 

base를 선택해 주시고

 

 

 

 

 

 

 

 

 

 

 

 

download를 차례대로 눌러 

 

설치를 진행해 줍니다.

 

* 계속 다음 다음을 눌러 다운로드를 끝마쳐주시면 됩니다.

 

 

 

 

 

 

 

 

 

 

다운로드를 마치셨으면 

 

시작 메뉴에 R언어가 설치된 것을 보실 수 있습니다.

 

 

 

 

 

 

 

 

 

 

 

 

R x64 v이 있고

 

R i386 v이 있을겁니다

 

 블록체인 포스팅을 보신 분들은 아시겠지만

 

64는 64-bit,

 

i386은 32-bit를 의미합니다

 

어느것을 선택하던 상관은 없습니다.

 

 

 

 

 

 

 

 

 

 

 

실행을 하시면

 

아래와 같은 화면을 보실 수 있을 겁니다.

 

 

 

 

 

 

2. R 맛보기

 

R을 설치하면 기본으로 제공되는 자료가 있는데,

 

이를 보기위해 iris를 입력해 봅시다.

 

 

 

 

그럼 위와같이 150개의 자료들이 

 

나오는걸 확인하실 수 있을 겁니다.

 

 

 

 

 

 

 

 

 

 

 

 

이를 토대로 iris의 Sepal.Length 데이터의

 

평균과 표준편차를 구해보겠습니다.

 

 

위와같이 간단한 출력은 물론

 

 

 

 

 

히스토그램 또한 쉽게 나타낼 수 있습니다.

 

 

 

 

 

 

 

 

 

 

 

다음 포스팅 부터는

 

demo()를 활용하여 

 

데이터 시각화에 대한

 

코드 분석을 진행하겠습니다.

 

 

 

 

 

 

 

 

 

 

 

 

 

감사합니다.

+ Recent posts