티스토리 뷰

2018년 1학기에 R을 활용하여 통계 분석 프로그래밍 강좌를 맡게 되었습니다. 


강의 내용은 크게, 1. R 기본 문법, 2. 데이터 전처리 3. 데이터 시각화 4. 통계 분석 으로 구성될 예정입니다.


그리하여 알맞은 교재를 살펴보게 되었습니다.


고려 대상 교재는 국립중앙도서관에서 쉽게 찾을 수 있는 다음의 5권이었습니다.


1. R라뷰

2. R로 배우는 데이터 분석 기본기 데이터 시각화

3. R 프로그래밍 기초 & 활용

4. R 프로그래밍

5. 쉽게 배우는 R 데이터 분석



먼저 R 그래픽스에 대해 어떤 내용을 다루고 있는지 확인합니다. (#은 개인적인 소감입니다)


확인 내용

분석 방법: 어떤 명령어를 쓰는가?

분석 데이터: 어떤 데이터를 쓰는가?

1. R라뷰

plot(), barplot(), hist(), pie(), plotrix::pie3d(), boxplot(), 

igraph::graph(), igraph::graph.data.frame(), 

d3Network::d3SimpleNetwork(),

treemap::treemap(), stars(),

fmsb::radarchart(), 


저수준의 작도 함수: points(), lines(), segments(), abline(),

grid, arrows(), rect(), text(), mtext(), title(),

box(), axis(), legend(), polygon()


ggplot2::geom_bar(), geom_segment(), geom_point(), geom_line(),

geom_area() 


#Data Visualization에 대한 철학은 없고, how-to를 알려주는 식



2. R로 배우는 데이터 분석 기본기 데이터 시각화

작도 디바이스, 작도 함수


작도 함수-고수준/저수준/대화식

작도디바이스- bitmap(), bmp(), dev2bitmap(), dev.copy2eps(), dev.copy2pdf(), jpeg()

pdf(), pictex(), png(), postscript(), quartz() # MacOSX의 가상 작도디바이스

tiff(), win.metafile() # Windows EMF

windows(), X11(), xfig()


dev.copy(), dev.curl() # 현재 디바이스 번호를 반환한다.

dev.list() # 활성화된 디바이스의 번호와 이름

dev.next(), dev.prev(), dev.off(k) # k번째 디바이스 종료

dev.print() # 활성화된 작도 디바이스를 복사하고 다른 그래픽스 디바이스로 재출력한다.

dev.set(k) # 디바이스의 k번째 작도디바이스를 연다.

graphics.off()


# 이런 명령들이 구체적으로 어떻게 활용되어야 하는지에 대해서는 언급이 없음.


고수준 작도 함수 

plot(), sunflowerplot(), curve(), matplot() # 겹쳐그리기용 함수

barplot(), dotchart(),

hist(), pie(), boxplot(), rug(), stripchart(), #인자별 1차원 산포도

분할표 그리기: fourfoldplot(), mosaicplot(), assocplot(),

다변량 그리기: stars(), symbols(), pairs(), coplot(),

3차원 데이터 그리기: image(), persp(), contour(), filled.countour(),

회귀식플롯: termplot,

scatterplot3d::scatterplot3d, 

lattice::wireframe(), histogram(y~x|g), 

1차원 lattice::barchart(), bwplot(), densityplot(), dotplot(), histogram(), qqmath(), stripplot()

2차원 lattice::qq(), xyplot()

등고선 lattice::levelplot(), contourplot()


저수준

plot.new(), frame(), points(), lines(), abline(), grid(), 

segments(), arrows(), rect(), text(), mtext() # 테두리 밖에 문자열

box() #테두리

title(), axis(), legend(), polygon(),

expression() #수식 추가

대화식 작도함수

locator(), identify()


그래픽스 파라미터

par(), #플롯영역, 작도영역, 디바이스영역

 

화면분할

par(oma= ), par(mfrow= ),

고도의 화면 분할

layout(), split.screen()


그리드 그래픽스 grid::gird.multiplanel(), gird.plot.and.legend(), ...


grob(Grid Graphics Objects)

# ggplot2은 소개되지 않음



3. R 프로그래밍 기초 & 활용(p.143-162/464)

pie(), barplot(), boxplot(), hist(), plot()


4. R 프로그래밍

(없음)


5. 쉽게 배우는 R 데이터 분석 

8장 그래프 만들기

ggplot2::

geom_point(), geom_col(), geom_line(), geom_boxplot(),

11장 지도 그래프

ggiraphExtra::map_dta(), ggChoropleth(), 

stringi::

kormaps2014::

12장 인터랙티브 그래프

plotly::

p <- ggplot(); ggplotly(p)

dygraphs::dygraph


# 우선 제가 생각하기에 "R 입문용"으로 R 그래픽스을 생각한다면,

일반적인 명령어(ex. plot 등)는 데이터를 처리하는 과정에서 조금씩 노출시킬 수 있을 것 같습니다.


그리고 본격적인 시각화를 하려면 ggplot2가 소개되어야 하지 않을까 합니다. 

그리고 단순히 명령어를 나열하는 식이 아닌 데이터 시각화에 대한 원리에 대해서도 소개를 해야 하지 않을까 합니다.


그리고 지도 그래프나 인터랙티브 그래프, Network 시각화 등은 좋은 기능이므로 소개할 수는 있지만,

각 세부 과정에서 다루어도 충분하지 않을까 합니다.





공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함