일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 딥러닝
- lstm
- word2vec
- NLP
- 그래프
- 그래프시각화
- 데이터
- HIVE
- SQL
- pandas
- 데이터시각화
- 기계학습
- R시각화
- Hadoop
- ggplot
- 빅데이터처리
- 주가예측
- R그래프
- 하둡
- CNN
- 자연어처리
- 데이터분석
- AI
- 빅데이터
- 데이터처리
- r
- Deeplearning
- 머신러닝
- Python
- R프로그래밍
- Today
- Total
욱이의 냉철한 공부
[R, DB연동] ORACLE과 연동하여 R에서 SQL 사용하기 본문
ORACLE과 연동하기 전에 이해하고 해야 할 것이 있다.

1. rJava : 이 패키지로 자바에 있는 리소스를 가져 올 수 있다.
즉 rjdbc를 사용할 수 있다.
이러한 패키지를 사용하기 위해서는 jdk가 필요하다.
그래서 보통 R을 설치하기 전에 자바를 설치한다.
2. rjdbc : R하고 자바가 설치되어 있어야 사용할 수 있다.
모든 데이터베이스하고 연동하게 해준다.
3. ojdbc6.jar : jar 파일은 자바패키지 파일 덩어리이다.
DB연동을 위해 ojdbc6.jar에 있는 패키지를 사용할 것이다.

ojdbc6.jar 파일을 C드라이브에 위치시킨다.
1. 오라클DB 연결

- JDBC함수를 사용하여 자바패키지를 사용한다.
- 자바패키지를 사용할 수 있는 jdbcDriver 객체로 오라클 scott관리자의 데이터베이스로 접속한다.
- tiger는 해당 비밀번호이다.
- 접속 한 객체는 conn이다.
2. SQL 사용


- dbGetQuery 함수를 사용하여 오라클에 접속한 객체 conn이 SQL로 데이터를 가져온다.
- 가져온 데이터베이스의 테이블은 R의 데이터프레임이 된다.
- 파랑색 박스의 데이터들이 일치하다는 것을 확인 할 수 있다.
r <- dbGetQuery(conn, "SELECT * FROM scott.emp")
3. SQL 사용 - 그룹별 계산


- sql쿼리가 길기 때문에 따로 sql변수명에 쿼리를 작성하였다.
- DB에 접속한 conn객체가 sql 쿼리를 사용하여 R에 데이터프레임으로 데이터를 가져온다.
- 파랑색 박스의 데이터들이 일치하다는 것을 확인 할 수 있다.
sql <- "select deptno, sum(sal) as sumsal
from scott.emp
group by deptno
order by deptno ";
r <- dbGetQuery(conn, sql)
4. SQL 사용 - 그룹별 계산 및 시각화



1) 오라클 테이블에서 R 데이터프레임으로 가져오기
- sql쿼리가 길기 때문에 따로 sql변수명에 쿼리를 작성하였다.
- DB에 접속한 conn객체가 sql 쿼리를 사용하여 R에 데이터프레임으로 데이터를 가져온다.
- 파랑색 박스의 데이터들이 일치하다는 것을 확인 할 수 있다.
sql <- "select job, sum(sal) as sumsal
from emp group by job
order by job desc ";
r <- dbGetQuery(conn, sql)
2) 시각화
- 막대그래프로 시각화한다.
- 자세한 방법은 아래 링크로 참고한다.
https://warm-uk.tistory.com/71
[R, 시각화] 기본 그래프 그리기(막대 그래프) - barplot()
여러 패키지 함수들, 그래프 함수 인자들 다 기억할 수 없어요. 저는 사용 할 시기가 되면 서적에서 봤던 거, 배웠던 거 정리한 것을 찾아서 활용해요. 가장 중요한 것은 함수들과 인자들을 외우
warm-uk.tistory.com
bp<-barplot(r$SUMSAL, names.arg=r$JOB, las=1, col=rainbow(5),ylim = c(0,10000))
text(x=bp, y=r$SUMSAL* 1.1,labels = r$SUMSAL,col="black",cex=1.2)
'데이터분석 > R' 카테고리의 다른 글
[R, 시각화, 패키지] ggplot 패키지 사용하여 이쁘게 그래프 그리기1 - geom_point(), geom_smooth() (0) | 2021.06.28 |
---|---|
[R, 전처리, 패키지] dply패키지 사용하여 데이터 처리하기 (0) | 2021.06.28 |
[R, 시각화] 기본 그래프 그리기(파이, 히스토그램, 박스그래프, 화면분할) - pie(), hist(), boxplot() (0) | 2021.06.28 |
[R, 시각화] 기본 그래프 그리기(막대 그래프) - barplot() (0) | 2021.06.28 |
[R, 시각화] 기본 그래프 그리기(산점도,꺽은선) - plot() (1) | 2021.06.28 |