2012-12-21 6 views
0

두 열이있는 행렬이 있습니다. 두 열 모두에서 숫자의 일부가 같지만 열 2에도 열 1에없는 숫자가 포함되어 있습니다행의 두 번째 행에서 R의 첫 번째 행에없는 요소 선택

column1에없는 값을 column2에 선택하고 column1에 순서대로 삽입하고 싶습니다. 내가 % 행렬 [행렬처럼 행렬 [1] %를 약간 매트릭스 연산을 사용하는 생각을 시작으로

는 [% 2]

단지 대신 %는 "NOT IN"에 대한 것을 사용.

여기서 데이터 파일이다 :

https://dl.dropbox.com/u/22681355/example.csv 

example<-read.csv("example.csv") 

예 [2] 예하는 몇 가지 숫자를 포함 [1]하지 않는다.

내가 좋아하는 것까지 :

values<-setdiff(example[,2],example[,1] 

order<-sort(values) 
+0

재현 가능한 예를 제공해주십시오. –

+1

귀하가 [재현 가능한 예] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)를 제공하고 예상되는 산출. –

답변

2

: 나는 다음과 같은 작업을 수행 할 수 아래의 답을 따라하지 %

에 %에 해당하는 뭔가를 사용하여이 숫자

  1. 검색 이렇게?

    Rgames> foo 
        [,1] [,2] [,3] [,4] [,5] 
    [1,] 1 5 9 13 17 
    [2,] 2 6 10 14 18 
    [3,] 3 7 1 15 19 
    [4,] 4 8 3 16 20 
    Rgames> foo[,1]%in%foo[,3] 
    [1] TRUE FALSE TRUE FALSE 
    Rgames> foo[,1]*!foo[,1]%in%foo[,3] 
    [1] 0 2 0 4 
    

    확실한 방법이 있습니다. 지옥, 그냥 다음과 같이하십시오 :

    Rgames> setdiff(foo[,1],foo[,3]) 
    [1] 2 4 
    
+0

+1 for setdiff. 우리가 OP가 실제로 우리에게 원하는 것이 무엇인지 알면 ... –

+0

위대한 항목이지만 foo [, 3]에 이러한 항목을 삽입하고 싶습니다. 숫자 순서대로 표시됩니다. – user1723765

+0

@Joris Meys, 왜 명확하지 않습니까? 두 개의 열, 2는 1에없는 몇 가지 숫자가 있습니다. 그 번호를 찾아 첫 번째 열에 배치하십시오. – user1723765

관련 문제