본문 바로가기

728x90
반응형

배우기

(265)
[실습문제] 2023. 12. 1.(금) (4문제) 실습문제 1. 2000-2013년_연령별실업율_40-49세.csv 파일을 읽고 1) 연도별 실업률 평균을 구하여라 이 문제는 열별 평균을 구하는 문제이다. 2) 월별 실업률 평균을 구하여라 이 문제는 행별 평균을 구하는 문제이다. 3) 모든 데이터를 소수점 둘 째 자리까지 표현하여라 이 문제에서는 sprintf를 사용하게 된다. 우선 값 하나를 대입하면 sprintf('%.2f', df1[1,1]) 이런 형식으로 작성하게 된다. 그렇게 되면 바로 apply에 대입을 할 수가 없다. 왜냐하면, 일단 apply에 대입하게 되면 아래와 같이 작성하게 되는데, apply(df1, c(1,2), sprintf, '%.2f') 이 함수를 해석하면 sprintf의 첫 인수가 df1이 된다는 의미이다. 하지만 문법을 ..
[실습문제] 2023. 11. 30.(목) (2문제) 실습문제 1. emplyment.csv 파일을 읽고 1) 연도별 총 근로일수의 평균을 구하여라 2) 고용형태별 월급여액 평균을 구하여라(전체근로자와 전체근로자(특수형태포함)이 다른 그룹이 되도록) 실습문제 2. student, exam_01 데이터를 사용하여 각 학년별 최고 성적자의 이름, 학년, 성적을 출력하여라.
R에서의 Oracle DB Connect 방법 현업에서는 보통 분석할 모든 데이터들은 외부 서버로 떨어져 있다. 즉 분석서버 및 분석 DB 서버가 분리되어 있을 가능성이 크다. DBMS가 설치되어 있는 서버가 따로 있을 것이라는 의미이다. 그래서 이 게시글에서는 R에서 DB로 접속을 하여 원하는 데이터를 가져오는 방법을 기록해두려고 한다. R은 데이터가 저장되는 공간이 없는 SW이므로 DB연결 후 데이터를 불러와야 한다. R에서의 통신 담당인 RJDBC패키지(64bit)와 oracle에서의 통신담당인 ojdbc.jar 파일이 필요하다(ojdbc.jar 는 oracle 설치 시 자동 생성된다). 그리고 RJDBC 버전과 ojdbc.jar 버전이 일치하여야 한다(64bit). 집에서 테스트 할 수 있는 방법으로, 내 PC에 있는 R에서 내 PC에 있는 ..
[복습] R(programming language) Group by 연산 함수(tapply, aggregate, ddply) + 하루끝(20231201) SQL에서 group by 연산처럼 수행을 도와주는 형태가 R에는 함수로 존재한다. 우선 group by 연산은 분리(그룹별) - 연산(적용) - 결합 의 매커니즘으로 구성되어 있다. 세 가지 정도 소개하려고 한다. 1. tapply tapply(vector, # 연산대상 index, # 그룹핑 대상 function # 적용함수, .....) # 함수의 추가 인수 위와 같은 문법으로 되어있다. 문법이 심플한 장점이 있으며, 비교적 단순한 문법이긴 하나 벡터로 리턴이 되는 것이 단점이다(data.frame 리턴 불가). oracle에서는 group by 후 max(), count() 이렇게 여러 개 들어올 수 있는데 tapply는 하나의 연산 대상만 전달이 가능하다. Line 2처럼 학년별 키의 평균을 구..
DBeaver로 oracle dbms 접속하기 1. 설치 후 처음 시작하면 다음과 같은 메시지가 뜨는데 샘플 데이터는 이미 있으므로 아니오를 클릭하였다. 2. Oracle을 사용하므로 Oracle을 선택하였다. 3. $ORACLE_HOME/NETWORK/ADMIN/TNSNAMES.ORA 파일을 열어 Host, Database이름, Port 번호, Client를 확인한 후 입력한다. 19c는 Databaserk orcl4로 했다(처음 설치 시 orcl19로 했다가 오류가 나서 orcl4로 변경함). 그리고 왼쪽 하단에 Test Connection을 클릭 4. Download 진행 5. 이렇게 하면 접속 끝이다. scott계정이 없어서, 선생님이 주신 sql 파일을 실행하여 scott 계정도 만들고, 테이블들도 복사해왔다. 여기서도 orange와 같은 ..
DBeaver 설치 방법 orange는 orange for oracle이라고 해서 oracle만을 위한 orange를 설치하여야 하는데 DBeaver는 어떤 DBMS든지 붙을 수 있는 장점이 있다. 1. https://dbeaver.io/ 사이트에 접속하여 DBeaver Coummunitiy Download 를 클릭한다. 2. Windows용을 설치할 거라 해당 링크를 클릭하여 설치파일을 다운로드 받는다. 학원에서 받을 떈 23.2.4 버전이었는데 벌써 23.2.5버전이 나왔네.. 3. 한국어 설치 4. 설치 시작합니다. 다음. 5. 동의함 클릭 6. For me 선택 후 다음 7. 선택 그대로 유지 후 다음 8. 설치 위치 선택 후 다음 9. 나는 바로가기 아이콘을 만들지 않음 체크 하고 설 10. 진행중 11. 바로 마침 클..
oracle(19c) 오라클 설치 방법 들어가면서: 이제까지는 oracle 11g 32bit 버전으로 공부를 했었다. 그 이유는 IDE를 orange로 사용했기 때문이다. orange가 64ibt와 호환이 되지 않기 때문이다. 그러나 oracle에서 fetch 절을 공부하기 위해서는 oracle 19c 64bit를 설치하여야 한다. 그러면 이제 orange를 사용할 수 없기 때문에 다른 IDE인 dbeaver를 사용할 것이다. dbeaver 설치 방법은 다른 게시글에서 작성하도록 하겠다. 참고로 orange 최신 버전은 64bit 지원이 가능하나 유료이다. 무료버전으로는 2개월 사용할 수 있다. 먼저 설치파일 압축을 지난번 11g 설치 폴더와는 다른 곳에 해제한다. 경로가 겹치면 안되기 때문이다. 윈도우 특징으로 여러 개 oracle을 설치해..
R 과 R Studio 설치하기(os: windows) 1. R 설치하기 1) 먼저 https://r-project.org/ 페이지에 접속한다. 2) 노란색으로 표시된 download R을 클릭한다. 3) Korea 찾아서 링크 클릭 4) Window용 설치 Download R for Window 를 클릭한다. 5) install R for first time 클릭 6) 최신 버전을 다운받는다. 7) 설치파일 실행 8) 설치 언어 한국어, 확인 9) 라이선스 설명. Free Software 라고 한다. 10) 설치 위치를 확인한다. 간속 Program Files(x86)에 설치가 될 수도 있는데 잘 확인해봐야 한다. 이 경로는 32bit 프로그램을 설치하는 곳이다. 64bit를 설치하면 호환의 문제가 생길 수도 있다. 11) 바로 다음 클릭한다. 만일 32b..
[복습] R(programming language) 적용함수(sapply, lapply, mapply, apply) (2) + 하루끝(20231130) 적용함수란 R에서의 apply 계열함수이다. 데이터의 일부를 fetch하여 함수에 적용하고, 적용 결과를 결합하여 리턴한다. (분리-적용-결합의 메커니즘을 가짐) 1. sapply 하나의 벡터의 원소에 함수를 적용한다(for문 없이 벡터의 원소를 하나씩 fetch하여 함수에 전달, 즉 하나의 벡터의 원소별 적용). 주로 벡터를 리턴한다(때에 따라 list나 matrix로 리턴되기는 함. split 쓰는 경우 등) 문법 sapply(list, # 1차원 객체 function, # 적용 함수 .....) # 함수에 추가 전달할 인수 필요시 예시이다. f1(c(11, 1))에서 에러가 나는 이유는 벡터를 허용하지 않기 때문이다. 벡터와 어울리지 않는 구문(if문)이 함수 안에 있다. 2. lapply sapp..
[실습문제] 2023. 11. 29.(수) (4문제) 실습문제 1. emp.csv 파일을 읽고 각 부서를 확인한 후 10번 부서이면 sal 10% 증가, 20번 부서이면 11% 증가, 30번 부서이면 12%증가하도록 출력하여라. 이 문제의 경우 반복 객체가 하나인 경우(sapply)와 반복 객체가 여러 개인 경우(mapply)로 풀 수 있는데 나는 반복 객체가 하나인 경우로 풀었다. 먼저 반복객체가 하나인 경우 풀이법이며, 학번 입력 시에 증가된 SAL이 출력되도록 코드를 작성하였다. 다음 풀이는 반복객체가 여러 개 있을 때 가능한 풀이이다. 이 때에는 mapply를 사용한다. 실습문제 2. gogak.csv, gift.csv 파일을 읽고 1) 고객번호를 입력하면 고객의 가용포인트를 출력하는 함수를 생성한 후 모든 고객에 대한 포인트를 출력하여라. 그리고 ..

728x90
반응형