티스토리 뷰

R

벡터(vector)

코린이도이 2021. 6. 6. 16:48

벡터(VECTOR)

  • 같은 유형의 데이터를 여러 개 변수로 보관해야 할 경우 벡터를 사용
  • 여러 변수들을 하나의 이름으로 묶은 집합
  • 벡터의 항목을 변경할 수 있으며, 추가 작업이 가능
  • 벡터의 각 항목에 이름을 부여하여 인덱스 뿐만 아니라 이름으로도 접근이 가능

1. 벡터 생성작업

  • c()함수를 이용하여 벡터 생성
  • 벡터 항목의 요소들은 한가지 데이터 타입이어야 하며, 그렇지 않을 경우 강제 형변환을 일으키게 됨.

2. 벡터 항목에 이름설정하기

  • names()함수을 이용하여 이름 설정
  • names() 반환값은 지정한 이름값을 문자열 벡터에 할당
  • names(이름을 저장할 객체) <- 이름값 지정
  • #벡터 생성
    coffee<-c(3000,3000,4000,4500,4500)
    
    #벡터 항목에 이름 설정
    names(coffee)<-c("아메리카노","에스프레소","까페라떼","까페모카","마끼야또")
    > coffee
    아메리카노 	에스프레소     까페라떼     카페모카	마끼야또
         3000       3000       4000       4500	4500 

3. 벡터 원소 출력하기

  • vector[n]: n번째 항목 출력 또는 vector["이름"]: 이름에 해당하는 항목 출력
  • vector[s:e]: s번째 항목부터 e번째 항목 출력
  • vector[-n]: -n번째 항목만 제외하고 나머지 항목 출력
  • vector[n]<-"new": n번째 항목을 "new"라는 항목으로 수정
  • vector["이름"]+500: 이름에 해당하는 항목에 500 덧셈
  • vector+500: 벡터 전체 항목에 대해 500 덧셈

4. 벡터 집합연산작업

  • 벡터의 하나의 집합으로 간주하고 집합간의 교집합, 합집합, 일치여부 등을 연산
  • 집합연산에 사용하는 함수
  • identical(x,y): 두 집합의 항목이 일치하면 TRUE, 일치하지 않으면 FALSE
  • union(x,y): 두 집합의 항목을 합집합 계산
  • intersect(x,y): 두 집합의 항목을 교집합 계산
  • setdiff(x,y): x의 차집합 계산
  • setequal(x,y): 두 집합의 구성값이 동일하면 TREU, 동일하지 않으면 FALSE
  • #예시
    > a_v<-c("딸기","수박","메론")
    > b_v<-c("딸기","수박","메론","키위")
    > setdiff(b_v,a_v)
    [1] "키위"
    > identical(a_v,b_v)
    [1] FALSE
    > c_v<-c("딸기","수박","딸기","메론")
    > setequal(a_v,c_v)
    [1] TRUE

5. 벡터에 연속적 데이터 할당하기

  • 연속적 데이터(일정 규칙대로 값을 할당)를 벡터에 할당하여 데이터 처리, 그래프 등에서 유용하게 사용할 수 있음
  • 연속적 데이터를 할당하기 위한 seq함수
  • seq(시작값, 끝값, 증가값) - 시작값부터 끝값까지 일정한 증가값 만큼씩의 값을 벡터에 할당
  • 반복적 항목으로 이루어진 벡터 생성 - rep함수
  • rep(반복할 벡터항목, times(또는 each))
    • times - 반복할 벡터항목 전체를 몇 번 반복할 것인지 횟수를 기술
    • each - 반복할 벡터항목 각각을 몇 번 반복할 것인지 횟수를 기술
  • #200씩 증가
    > y<-seq(0,1000,200)
    > y
    [1]    0  200  400  600  800 1000
    
    #증가값을 설정안하면 기본은 1씩 증가
    > y1<-seq(1,10)
    > y1
     [1]  1  2  3  4  5  6  7  8  9 10
    
    #1:2를 2번 반복
    > part<-rep(1:2,times=2)
    > part
    [1] 1 2 1 2
    
    #1과2를 각각 3번씩 반복
    > part2<-rep(1:2,each=3)
    > part2
    [1] 1 1 1 2 2 2

6. 벡터의 길이를 구하는 작업

  • 벡터가 몇 개 항목으로 구성되었는지를 계산하는 작업
  • length(벡터): 해당 벡터의 길이를 계산하여 보여줌
  • NROW(벡터): 벡터 뿐만 아니라 행렬의 행, 데이터프레임의 행 수를 계산해서 보여줌
  • > coffee<-c("아메리카노","카푸치노","녹차라떼","카페모카")
    > NROW(coffee)
    [1] 4
    > length(coffee)
    [1] 4

'R' 카테고리의 다른 글

함수(function)  (0) 2021.06.06
조건제어문(if, ifelse, for, while, repeat)  (0) 2021.06.06
데이터 프레임(data frame)  (0) 2021.06.06
리스트(list)와 행렬(matrix)  (0) 2021.06.06
R의 데이터 구조  (0) 2021.06.04
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/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
글 보관함