User Tools

Site Tools


Sidebar

This is the sidebar. Without it, the main text is too wide!

r_source_code

제37회 KOBIC 차세대 생명정보학 교육 실습용 R 코드

이 소스코드는 저자(인하대학교 유동현 교수)의 허락을 받고 공개하는 것이다. 실행환경의 customization과 설명을 위하여 약간의 수정이 이루어진 곳이 있을 수 있다. R을 이용한 데이터 시각화 실습에 쓰인 코드는 유충현·홍성학 공저 R을 활용한 데이터 시각화(인터넷 교보문고 링크)에서 저자의 허락을 받고 발췌 정리한 것이다. 실습용 코드 내에 포함된 디렉토리 설정 관련 명령문은 사용자의 환경에 맞게 고쳐야 한다.

모든 실습용 데이터 파일 압축본: sample_data.zip

1일차: R을 이용한 데이터 핸들링 및 프로그래밍

R의 소개 및 기본 기능

연습 문제

  1. lars라는 이름의 패키지를 설치하고 불러오시오.
  2. lars 패키지에서 제공되는 함수 및 자료 목록을 출력하시오.
  3. string과 관련된 R 함수를 검색하시오.
  4. rnonm() 함수에 대한 도움말 참조하여 예제 코드를 실행하시오.
  5. BMI(체질량 지수)를 계산하시오. 계산식은 체중 / 키(m)의 제곱이며 18.5 미만은 저체중, 18.5-24.9는 정상임.

연습 문제 해답

R의 데이터 구조

연습 문제

  1. 성분으로 “0”, “21”, “12”, “16”을 갖는 문자열 벡터를 ch라는 이름으로 생성하시오.
  2. 1번의 ch를 숫자형 변수로 변환하여 y에 저장하고, y를 오름차순으로 정렬하여 저장하시오.
  3. seq() 함수를 이용하여 y2라는 변수명으로 0, 8, 16, 24d의 수열을 생성하시오.
  4. y < y2의 논리값과 y ⇐ y2의 논리값 중 간은 값의 갯수는 얼마인가?
  5. 등차수열 1,3,5,…를 1항부터 30항까지 생성하여 x에 저장하시오.
  6. repeat() 함수를 이용하여 TRUE, FALSE의 순서로 반복. 벡터의 크기가 10이 되도록 논리 벡터를 생성하여 x2라는 이름으로 저장하시오.
  7. x에서 10보다 크고 20보다 작은 원소의 합을 구하시오.
  8. x를 이용하여 6 x 5의 행렬을 생성하고 xmat 이름으로 저장하시오(행 기준으로 채움).
  9. xmat에서 apply() 함수를 이용하여 행별 합, 열별 평균, 열별 분산값을 각각 계산하여 sumr, meancm varc의 이름으로 리스트 z에 저장하시오.

연습 문제 해답

R을 이용한 데이터 다루기

연습 문제

  1. Ex_data.csv(gzipped) 파일로부터 자료를 읽어서 dat으로 저장하시오.
  2. head() 함수를 이용하여 입력된 dat를 확인하시오.
  3. dat 자료의 차원을 구하시오.
  4. data의 첫번째 열에서 유전자의 이름을 추출하고 gene_name.txt 파일에 저장하시오.
  5. dat의 2~10 열의 성분을 선택하여 새로운 변수에 저장하고 sub_data.txt 파일에 저장하시오(필드 구분자는 tab).
  6. dat에서 유전자의 이름의 길이가 7보다 큰 경우만 선택하여 sub_data2.csv 파일로 저장하시오(필드 구분자는 comma).
  7. dat에서 결측값의 갯수를 구하시오.
  8. dat에서 결측값의 위치를 1차원 인덱스로 찾으시오.
  9. dat에서 결측값의 위치를 2차원 인덱스로 찾으시오.
  10. 9번에서 찾은 dat의 결측값의 위치를 index 변수에 저장하고 이를 활용하여 모든 결측값을 10으로 변경하시오.

연습 문제 해답

R을 이용한 프로그래밍

연습 문제

  1. 1에서 100까지 차례로 더해 나갈 때, 처음으로 합이 1000을 넘게 만드는 수는 무엇인지 for 문과 break 문을 이용하여 구하시오. 또한 처음으로 1000을 넘었을 때 누적합은 얼마인지 구하시오.
  2. 반복문을 이용하여 50부터 100까지의 합을 계산할 때, 짝수의 합을 계산하는 코드를 작성하시오(next 함수를 사용)
  3. x = runif(1000,0,100)을 실행하고 x의 값이 5보다 크고 20보다 작은 수만 선택하여 합을 계산하고자 할 때, 아래와 같이 코드를 작성하시오.
    • 반복문과 조건문을 이용하여 계산하고 실행 시간을 체크하시오.
    • 인덱스를 이용하여 계산하고 실행 시간을 체크하시오.

연습 문제 해답

2일차: R의 기초 통계 분석 및 데이터 시각화

R의 기초 통계 분석

R을 이용한 회귀 분석

R을 이용한 데이터 시각화

기타 유용한 팁

r_source_code.txt · Last modified: 2018/02/01 08:47 by hyjeong