SlideShare a Scribd company logo
1 of 44
Data Designer
Class 06
Data Wrangling
꿈꾸는데이터디자이너 시즌2
Data Wrangling
꿈꾸는데이터디자이너 시즌2
Data Wrangling
the process of manually converting or mapping data
from one "raw" form into another format
that allows for more convenient consumption of the data
꿈꾸는데이터디자이너 시즌2
어떠한 형태의 데이터가 필요할까
꿈꾸는데이터디자이너 시즌2
Wide format vs Long format
hour03 hour09 hour15 hour21
강릉 25.5 26.2 29.3 26
광주 25.5 27.9 33.4 27.6
대구 27.3 29.5 36.1 30.7
대전 26.1 28.9 33.3 28.4
부산 25.3 28 29.8 25.6
서울 26.1 26.8 31.1 27.9
인천 25.7 25.8 28.4 26.2
제주 26.8 28.6 29.9 26.8
춘천 23.8 23.6 32 26.2
포항 28.9 27.1 34.3 31.7
해남 24.4 27.4 29.5 26.2
location hour temp
강릉 hour03 25.5
광주 hour03 25.5
대구 hour03 27.3
대전 hour03 26.1
부산 hour03 25.3
서울 hour03 26.1
인천 hour03 25.7
제주 hour03 26.8
춘천 hour03 23.8
포항 hour03 28.9
해남 hour03 24.4
강릉 hour09 26.2
꿈꾸는데이터디자이너 시즌2
Wide format
hour03 hour09 hour15 hour21
강릉 25.5 26.2 29.3 26
광주 25.5 27.9 33.4 27.6
대구 27.3 29.5 36.1 30.7
대전 26.1 28.9 33.3 28.4
부산 25.3 28 29.8 25.6
서울 26.1 26.8 31.1 27.9
인천 25.7 25.8 28.4 26.2
제주 26.8 28.6 29.9 26.8
춘천 23.8 23.6 32 26.2
포항 28.9 27.1 34.3 31.7
해남 24.4 27.4 29.5 26.2
- 엑셀 피벗테이블 등을 통해서 정리한 형태
- 보고서 등에 자주 등장
- 한정된 공간에 효율적으로 정보 배치
- 변수를 추가하기 어렵다
- 다양한 형태로 변환하기 힘들다
꿈꾸는데이터디자이너 시즌2
Long format (tidy data)
- 하나의 변수가 하나의 열을 차지한다
- 다른 형태의 데이터로 변환하기 쉽다
- 시각화, 모델링이 편하다
- 데이터를 직접 보면서 확인하기는 힘들다
- 데이터의 부피가 커진다
location hour temp
강릉 hour03 25.5
광주 hour03 25.5
대구 hour03 27.3
대전 hour03 26.1
부산 hour03 25.3
서울 hour03 26.1
인천 hour03 25.7
제주 hour03 26.8
춘천 hour03 23.8
포항 hour03 28.9
해남 hour03 24.4
강릉 hour09 26.2
꿈꾸는데이터디자이너 시즌2
Tidy Data
꿈꾸는데이터디자이너 시즌2
Tidy data
- 각 변수는 하나의 열을 구성한다
- 각 관측치는 하나의 행을 구성한다
- 하나의 테이블에는
동일한 관측에 의해서 수집된 데이터가 담겨있다
꿈꾸는데이터디자이너 시즌2
location hour temp
강릉 hour03 25.5
광주 hour03 25.5
대구 hour03 27.3
대전 hour03 26.1
부산 hour03 25.3
서울 hour03 26.1
인천 hour03 25.7
제주 hour03 26.8
춘천 hour03 23.8
포항 hour03 28.9
해남 hour03 24.4
강릉 hour09 26.2
Tidy data
변수
관측치
꿈꾸는데이터디자이너 시즌2
Tidy data
movieNm cnt date week weeklyRank
aaa 100 2015-08-01 1 3
aaa 120 2015-08-08 2 3
aaa 240 2015-08-15 3 3
aaa 300 2015-08-22 4 2
bbb 200 2015-08-01 1 2
bbb 250 2015-08-08 2 2
bbb 300 2015-08-15 3 2
bbb 350 2015-08-22 4 1
ccc 700 2015-08-01 1 1
ccc 550 2015-08-08 2 1
ccc 320 2015-08-15 3 1
ccc 280 2015-08-22 4 3
영화의 일별 관객수와 주간 순위가 섞여있는 테이블을 생각해보자
꿈꾸는데이터디자이너 시즌2
Tidy data
movieNm cnt date
aaa 100 2015-08-01
aaa 120 2015-08-08
aaa 240 2015-08-15
aaa 300 2015-08-22
bbb 200 2015-08-01
bbb 250 2015-08-08
bbb 300 2015-08-15
bbb 350 2015-08-22
ccc 700 2015-08-01
ccc 550 2015-08-08
ccc 320 2015-08-15
ccc 280 2015-08-22
movieNm week weeklyRank
aaa 1 3
bbb 1 2
ccc 1 1
aaa 2 3
bbb 2 2
ccc 2 1
aaa 3 3
bbb 3 2
ccc 3 1
aaa 4 2
bbb 4 1
ccc 4 3
영화의 일별 관객수 영화의 주간 순위
관측1 관측2
꿈꾸는데이터디자이너 시즌2
Tidy Data가 필요한 이유
꿈꾸는데이터디자이너 시즌2
RAW DATA 변형1 변형2 변형3 변형4
시각화1 시각화2 시각화3 시각화4
꿈꾸는데이터디자이너 시즌2
RAW DATA TIDY DATA
시각화1
시각화2
시각화3
시각화4
꿈꾸는데이터디자이너 시즌2
Tidy Data로 변환하기
꿈꾸는데이터디자이너 시즌2
tidyr
install.packages('tidyr')
library(tidyr)
data.frame에만 적용할 수 있다.
다른 자료형에 적용하거나 더 광범위한 사용을 위해서는 reshape2 패키지를 이용
꿈꾸는데이터디자이너 시즌2
tidyr::gather()
weather_wide = read.csv('weather_wide.csv', fileEncoding='UTF-8')
weather_long = gather(weather_wide, hour, temp, hour03:hour21)
wide format -> long format
gather(data, key column name, value column name, range of key column)
location hour03 hour09 hour15 hour21
강릉 25.5 26.2 29.3 26
광주 25.5 27.9 33.4 27.6
대구 27.3 29.5 36.1 30.7
대전 26.1 28.9 33.3 28.4
부산 25.3 28 29.8 25.6
... ... ... ... ...
location hour temp
강릉 hour03 25.5
광주 hour03 25.5
대구 hour03 27.3
대전 hour03 26.1
부산 hour03 25.3
... ... ...
꿈꾸는데이터디자이너 시즌2
dplyr을 이용한 데이터 정제
꿈꾸는데이터디자이너 시즌2
dplyr
install.packages('dplyr')
library(dplyr)
data.frame에만 적용할 수 있다.
데이터 프레임 이외에 다양한 자료형에 적용하려면 plyr 패키지를 이용할 수 있다
꿈꾸는데이터디자이너 시즌2
dplyr::select()
- 지정한 열을 선택할 수 있다
- 열의 이름을 변경할 수 있다
select(data, column_name)
select(data, new_name = column_name)
select(weather_long, location, temp)
select(weather_long, loc = location, temp)
꿈꾸는데이터디자이너 시즌2
dplyr::filter()
- 조건을 지정해서 원하는 행만 출력한다
- |연산자를 통해 OR연산을 수행할 수 있고,
AND연산은 조건을 comma로 이어 붙이면 가능하다
filter(data, column_name > value)
filter(weather_long, location == ' ')
filter(weather_long, location == ' ', temp > 26)
filter(weather_long, location == ' ' | location == ' ')
꿈꾸는데이터디자이너 시즌2
dplyr::mutate()
- 연산을 통해 새로운 열을 생성한다
- 함수 내에서 생성한 열도 바로 연산에서 사용할 수 있다
- 상수를 지정하면 동일한 값으로 채운 열을 생성한다
mutate(data, new_column = value)
mutate(weather_long, mean_temp = mean(temp))
mutate(weather_long, mean_temp = mean(temp),
diff = temp - mean_temp)
mutate(weather_long, country = 'Korea')
꿈꾸는데이터디자이너 시즌2
select, filter, mutate 실습
섭씨(C)에서 화씨(F)로 변환시키는 공식이
F = (9/5)*C + 32 라고 합니다
1) temp열의 온도값을 화씨로 변경하여 temp_f 라는 열을 생성해주세요
2) 화씨 온도가 90도를 넘는 경우만 찾아서 location과 temp 열만 출력해주세요
꿈꾸는데이터디자이너 시즌2
dplyr::summarise()
- 데이터를 요약해준다
- group_by와 함께 사용할 수 있다
summarise(data, new_column = value)
summarise(weather_long, mean(temp))
summarise(weather_long, count = n())
꿈꾸는데이터디자이너 시즌2
dplyr::group_by()
- 연산을 그룹별로 시행할 수 있도록 눈에 보이지 않는 그룹을 지정해준다
- mutate, summarise와의 조합으로 사용한다
- 그룹 지정을 해제하려면 ungroup()을 사용한다
group_by(data, coloumn_name)
group_by(weather_long, location)
group_by(weather_long, hour)
꿈꾸는데이터디자이너 시즌2
dplyr::group_by()
- 연산을 그룹별로 시행할 수 있도록 눈에 보이지 않는 그룹을 지정해준다
- mutate, summarise와의 조합으로 사용한다
group_by(data, coloumn_name)
weather_loc = group_by(weather_long, location)
weather_hour = group_by(weather_long, hour)
summarise(weather_loc, mean_temp = mean(temp))
summarise(weather_hour, mean_temp = mean(temp))
mutate(weather_loc, mean_temp = mean(temp))
mutate(weather_hour, mean_temp = mean(temp))
꿈꾸는데이터디자이너 시즌2
location hour temp
강릉 hour03 25.5
광주 hour03 25.5
대구 hour03 27.3
강릉 hour09 26.2
광주 hour09 27.9
대구 hour09 29.5
강릉 hour15 29.3
광주 hour15 33.4
대구 hour15 36.1
강릉 hour21 26
광주 hour21 27.6
대구 hour21 30.7
location hour temp
강릉 hour03 25.5
강릉 hour09 26.2
강릉 hour15 29.3
강릉 hour21 26
광주 hour03 25.5
광주 hour09 27.9
광주 hour15 33.4
광주 hour21 27.6
대구 hour03 27.3
대구 hour09 29.5
대구 hour15 36.1
대구 hour21 30.7
꿈꾸는데이터디자이너 시즌2
dplyr::arrange()
- 지정한 열을 기준으로 정렬한다
- 열을 두 개 이상 지정하면 첫 번째 열의 값이 동점일 때 나머지 열을 기준으로 정렬
- 기본값은 오름차순이지만 desc()를 이용해서 내림차순 정렬을 시킬 수 있다
- group_by의 영향을 받는다
arrange(data, coloumn_name)
arrange(data, desc(coloumn_name))
arrange(weather_long, desc(temp), hour)
summary_loc = summarise(weather_loc, mean_temp = mean(temp))
arrange(summary_loc, mean_temp)
arrange(summary_loc, desc(mean_temp))
꿈꾸는데이터디자이너 시즌2
실습
iris 데이터를 이용해서 종(Species)별로
1) Sepal.Width 열과 Sepal.Length 열의 평균을 구해주세요
2) max(),min()을 이용해서
각 종별로 Petal.Width의 최대값, 최소값을 구해주세요
꿈꾸는데이터디자이너 시즌2
pipe operator
%>%
꿈꾸는데이터디자이너 시즌2
magrittr
꿈꾸는데이터디자이너 시즌2
%>%
f
%>% f
꿈꾸는데이터디자이너 시즌2
%>%
f(x, y, z) 는
x %>% f(y, z) 와 같다
g(f(a, b), c) 는
a %>% f(b) %>% g(c) 와 같다
꿈꾸는데이터디자이너 시즌2
%>%
summarise(group_by(weather_long, location),
mean_temp = mean(temp))
weather_long %>%
group_by(location) %>%
summarise(mean_temp = mean(temp))
아래의 두 코드는 같다
꿈꾸는데이터디자이너 시즌2
pipe를 쓰는 이유
꿈꾸는데이터디자이너 시즌2
weather_long 데이터를
location 변수를 기준으로 group_by해서
각 지역별로 온도의 평균을 구하고
지역별 평균에서 전체 평균을 뺀 값을 구해서
그 값이 0보다 큰 지역을 구한 다음에
지역과 평균 온도값만
평균 온도에 대해 내림차순으로 정렬해보자
꿈꾸는데이터디자이너 시즌2
arrange(
select(
filter(
mutate(
summarise(
group_by(weather_long, location),
mean_temp = mean(temp)
),
diff = mean_temp - mean(mean_temp)
),
diff > 0
),
location, mean_temp
),
desc(mean_temp)
)
꿈꾸는데이터디자이너 시즌2
weather_01 = group_by(weather_long, location)
weather_02 = summarise(weather_01,
mean_temp = mean(temp))
weather_03 = mutate(weather_02,
diff = mean_temp - mean(mean_temp))
weather_04 = filter(weather_03, diff > 0)
weather_05 = select(weather_04, location, mean_temp)
weather_06 = arrange(weather_05, desc(mean_temp))
weather_06
꿈꾸는데이터디자이너 시즌2
weather_long %>%
group_by(location) %>%
summarise(mean_temp = mean(temp)) %>%
mutate(diff = mean_temp - mean(mean_temp)) %>%
filter(diff > 0) %>%
select(location, mean_temp) %>%
arrange(desc(mean_temp))
pipe를 이용해 정리하면 다음과 같다
꿈꾸는데이터디자이너 시즌2
pipe를 쓰는 이유
- 가독성
- 불필요한 임시 변수를 줄일 수 있다
- 생각하는 순서대로 코드를 작성할 수 있다
주의해야 할 점
- pipe operator가 들어있는 패키지를 불러와야
사용할 수 있다
- pipe 를 사용하기 힘든 함수구조에 적용하면
오히려 코드가 더 복잡해질 수 있다
- pipe 연산자를 모르는 사람이 보면 이해하기 힘들다
꿈꾸는데이터디자이너 시즌2
WELCOME TO
HADLEYVERSE
꿈꾸는데이터디자이너 시즌2
과제입니당
- 꿈데디 1기 강의자료 실습해보기
http://lumiamitie.github.io/r_tutorial/Datadesigner01_cleansing
- weather_wide_full.csv 데이터
- tidy data로 변환하기
- 지역별, 시간대별 평균 구하기
[week6]R_Wrangling

More Related Content

What's hot

practice2
practice2practice2
practice2
yosm
 
이산수학 C1 프로젝트 4
이산수학 C1 프로젝트 4이산수학 C1 프로젝트 4
이산수학 C1 프로젝트 4
pkok15
 

What's hot (20)

[Week13] D3.js_Bar Chart
[Week13] D3.js_Bar Chart[Week13] D3.js_Bar Chart
[Week13] D3.js_Bar Chart
 
[week16] D3.js (Scale & axis)
[week16] D3.js (Scale & axis)[week16] D3.js (Scale & axis)
[week16] D3.js (Scale & axis)
 
꿈데디 D3.js강의 6주차
꿈데디 D3.js강의 6주차꿈데디 D3.js강의 6주차
꿈데디 D3.js강의 6주차
 
[Week12] D3.js_Basic2
[Week12] D3.js_Basic2[Week12] D3.js_Basic2
[Week12] D3.js_Basic2
 
[week12] D3.js_Basic
[week12] D3.js_Basic[week12] D3.js_Basic
[week12] D3.js_Basic
 
꿈데디 D3.js강의 2주차
꿈데디 D3.js강의 2주차꿈데디 D3.js강의 2주차
꿈데디 D3.js강의 2주차
 
R intro
R introR intro
R intro
 
3D Graphics 101
3D Graphics 1013D Graphics 101
3D Graphics 101
 
R_datamining
R_dataminingR_datamining
R_datamining
 
R 스터디 두번째
R 스터디 두번째R 스터디 두번째
R 스터디 두번째
 
R 스터디 네번째
R 스터디 네번째R 스터디 네번째
R 스터디 네번째
 
practice2
practice2practice2
practice2
 
세그먼트 트리 느리게 업데이트하기 - Sogang ICPC Team, 2020 Winter
세그먼트 트리 느리게 업데이트하기 - Sogang ICPC Team, 2020 Winter세그먼트 트리 느리게 업데이트하기 - Sogang ICPC Team, 2020 Winter
세그먼트 트리 느리게 업데이트하기 - Sogang ICPC Team, 2020 Winter
 
차원축소 훑어보기 (PCA, SVD, NMF)
차원축소 훑어보기 (PCA, SVD, NMF)차원축소 훑어보기 (PCA, SVD, NMF)
차원축소 훑어보기 (PCA, SVD, NMF)
 
이산수학 C1 프로젝트 4
이산수학 C1 프로젝트 4이산수학 C1 프로젝트 4
이산수학 C1 프로젝트 4
 
Drawing with data
Drawing with dataDrawing with data
Drawing with data
 
이산수학04
이산수학04이산수학04
이산수학04
 
퍼시스턴트 세그먼트 트리 - Sogang ICPC Team, 2020 Winter
퍼시스턴트 세그먼트 트리 - Sogang ICPC Team, 2020 Winter퍼시스턴트 세그먼트 트리 - Sogang ICPC Team, 2020 Winter
퍼시스턴트 세그먼트 트리 - Sogang ICPC Team, 2020 Winter
 
R 스터디 세번째
R 스터디 세번째R 스터디 세번째
R 스터디 세번째
 
Lazy Propagation on Segment Trees - Sogang ICPC Team, 2019
Lazy Propagation on Segment Trees - Sogang ICPC Team, 2019Lazy Propagation on Segment Trees - Sogang ICPC Team, 2019
Lazy Propagation on Segment Trees - Sogang ICPC Team, 2019
 

Viewers also liked (7)

[week7]R_Wrangling(2)
[week7]R_Wrangling(2)[week7]R_Wrangling(2)
[week7]R_Wrangling(2)
 
Seoul 연구원
Seoul 연구원 Seoul 연구원
Seoul 연구원
 
[week7] 데이터읽어주는남자
[week7] 데이터읽어주는남자[week7] 데이터읽어주는남자
[week7] 데이터읽어주는남자
 
Bloter 넥스트 저널리즘 스쿨 강의자료
Bloter 넥스트 저널리즘 스쿨 강의자료Bloter 넥스트 저널리즘 스쿨 강의자료
Bloter 넥스트 저널리즘 스쿨 강의자료
 
[Week20] D3.js_Mapping
[Week20] D3.js_Mapping[Week20] D3.js_Mapping
[Week20] D3.js_Mapping
 
[Week5]데이터읽어주는남자
[Week5]데이터읽어주는남자[Week5]데이터읽어주는남자
[Week5]데이터읽어주는남자
 
최적화 모델을 이용한 카페 위치 선정 제안
최적화 모델을 이용한 카페 위치 선정 제안최적화 모델을 이용한 카페 위치 선정 제안
최적화 모델을 이용한 카페 위치 선정 제안
 

Similar to [week6]R_Wrangling

MapReduce 실행 샘플 (K-mer Counting, K-means Clustering)
MapReduce 실행 샘플 (K-mer Counting, K-means Clustering)MapReduce 실행 샘플 (K-mer Counting, K-means Clustering)
MapReduce 실행 샘플 (K-mer Counting, K-means Clustering)
주영 송
 

Similar to [week6]R_Wrangling (20)

MapReduce 실행 샘플 (K-mer Counting, K-means Clustering)
MapReduce 실행 샘플 (K-mer Counting, K-means Clustering)MapReduce 실행 샘플 (K-mer Counting, K-means Clustering)
MapReduce 실행 샘플 (K-mer Counting, K-means Clustering)
 
이정근_project_로봇비전시스템.pdf
이정근_project_로봇비전시스템.pdf이정근_project_로봇비전시스템.pdf
이정근_project_로봇비전시스템.pdf
 
House pricing prediction in R(Regression Project)
House pricing prediction in R(Regression Project)House pricing prediction in R(Regression Project)
House pricing prediction in R(Regression Project)
 
Map reduce 기본 설명
Map reduce 기본 설명Map reduce 기본 설명
Map reduce 기본 설명
 
R 프로그램의 이해와 활용 v1.1
R 프로그램의 이해와 활용 v1.1R 프로그램의 이해와 활용 v1.1
R 프로그램의 이해와 활용 v1.1
 
Super map idesktop교육교재심화
Super map idesktop교육교재심화Super map idesktop교육교재심화
Super map idesktop교육교재심화
 
MariaDB MaxScale monitor 매뉴얼
MariaDB MaxScale monitor 매뉴얼MariaDB MaxScale monitor 매뉴얼
MariaDB MaxScale monitor 매뉴얼
 
Bind Peeking 한계에 따른 Adaptive Cursor Sharing 등장_Wh oracle
Bind Peeking 한계에 따른 Adaptive Cursor Sharing 등장_Wh oracleBind Peeking 한계에 따른 Adaptive Cursor Sharing 등장_Wh oracle
Bind Peeking 한계에 따른 Adaptive Cursor Sharing 등장_Wh oracle
 
AWS Summit Seoul 2023 | 바람을 예측하여 재생에너지 산업을 발전시키는 GS E&R의 새로운 여정
AWS Summit Seoul 2023 | 바람을 예측하여 재생에너지 산업을 발전시키는 GS E&R의 새로운 여정AWS Summit Seoul 2023 | 바람을 예측하여 재생에너지 산업을 발전시키는 GS E&R의 새로운 여정
AWS Summit Seoul 2023 | 바람을 예측하여 재생에너지 산업을 발전시키는 GS E&R의 새로운 여정
 
Reproducible research(2)
Reproducible research(2)Reproducible research(2)
Reproducible research(2)
 
Persistent Segment Tree - Sogang ICPC Team, 2019
Persistent Segment Tree - Sogang ICPC Team, 2019Persistent Segment Tree - Sogang ICPC Team, 2019
Persistent Segment Tree - Sogang ICPC Team, 2019
 
분석6기 4조
분석6기 4조분석6기 4조
분석6기 4조
 
공간데이터베이스(Spatial db)
공간데이터베이스(Spatial db)공간데이터베이스(Spatial db)
공간데이터베이스(Spatial db)
 
[Pgday.Seoul 2021] 1. 예제로 살펴보는 포스트그레스큐엘의 독특한 SQL
[Pgday.Seoul 2021] 1. 예제로 살펴보는 포스트그레스큐엘의 독특한 SQL[Pgday.Seoul 2021] 1. 예제로 살펴보는 포스트그레스큐엘의 독특한 SQL
[Pgday.Seoul 2021] 1. 예제로 살펴보는 포스트그레스큐엘의 독특한 SQL
 
프로그래밍 대회: C++11 이야기
프로그래밍 대회: C++11 이야기프로그래밍 대회: C++11 이야기
프로그래밍 대회: C++11 이야기
 
문자함수(1)
문자함수(1)문자함수(1)
문자함수(1)
 
Java_02 변수자료형
Java_02 변수자료형Java_02 변수자료형
Java_02 변수자료형
 
Java 변수자료형
Java 변수자료형Java 변수자료형
Java 변수자료형
 
3ds maxscript 튜토리얼_20151206_서진택
3ds maxscript 튜토리얼_20151206_서진택3ds maxscript 튜토리얼_20151206_서진택
3ds maxscript 튜토리얼_20151206_서진택
 
파이썬 Collections 모듈 이해하기
파이썬 Collections 모듈 이해하기파이썬 Collections 모듈 이해하기
파이썬 Collections 모듈 이해하기
 

More from neuroassociates

More from neuroassociates (13)

[week8] 데이터읽어주는남자
[week8] 데이터읽어주는남자[week8] 데이터읽어주는남자
[week8] 데이터읽어주는남자
 
[week6] 데이터읽어주는남자
[week6] 데이터읽어주는남자[week6] 데이터읽어주는남자
[week6] 데이터읽어주는남자
 
[week9]R_statics
[week9]R_statics[week9]R_statics
[week9]R_statics
 
[Week5]R_scraping
[Week5]R_scraping[Week5]R_scraping
[Week5]R_scraping
 
[Week4]데이터읽어주는남자
[Week4]데이터읽어주는남자[Week4]데이터읽어주는남자
[Week4]데이터읽어주는남자
 
[Week4] Google refine
[Week4] Google refine[Week4] Google refine
[Week4] Google refine
 
[Week3]데이터읽어주는남자
[Week3]데이터읽어주는남자[Week3]데이터읽어주는남자
[Week3]데이터읽어주는남자
 
[Week2]데이터읽어주는남자
[Week2]데이터읽어주는남자[Week2]데이터읽어주는남자
[Week2]데이터읽어주는남자
 
꿈꾸는 데이터 디자이너 시즌2 교육 설명회 2부
꿈꾸는 데이터 디자이너 시즌2 교육 설명회 2부꿈꾸는 데이터 디자이너 시즌2 교육 설명회 2부
꿈꾸는 데이터 디자이너 시즌2 교육 설명회 2부
 
꿈꾸는 데이터 디자이너 시즌2 교육설명회
꿈꾸는 데이터 디자이너 시즌2 교육설명회꿈꾸는 데이터 디자이너 시즌2 교육설명회
꿈꾸는 데이터 디자이너 시즌2 교육설명회
 
꿈꾸는 데이터 디자이너 1기를 끝내며
꿈꾸는 데이터 디자이너 1기를 끝내며꿈꾸는 데이터 디자이너 1기를 끝내며
꿈꾸는 데이터 디자이너 1기를 끝내며
 
[week14] Getting started with D3.js
[week14] Getting started with D3.js[week14] Getting started with D3.js
[week14] Getting started with D3.js
 
[Week10] R graphics
[Week10] R graphics[Week10] R graphics
[Week10] R graphics
 

[week6]R_Wrangling